firefox userChrome.js greasemonkeyスクリプトスレ
1 :
名無しさん@お腹いっぱい。 :
2007/01/13(土) 05:56:39 ID:iw6A+uB/0
JavaScript Actionsも仲間に入れてやってくれ
何この早漏
>>1 みずくさいな。新スレ立てるならオレ達に相談しろよ。仲間だろ。
6 :
名無しさん@お腹いっぱい。 :2007/01/13(土) 23:37:39 ID:V7/KSThI0
JavaScript Actionsのタブ関係のを全部userChrome.js用にして
このスレ、クレクレ厨しかいないだろw よって終了
またもや、またもやのアンチのスレ立て
>無いから立てました。
これが何よりの証拠
>>1 大儀である
じゃねーよヴォケ広告カットスレ再利用しろつったろカスが
googleで検索したワードがハイライト表示されるスクリプトが落とせなくなってる・・
つかさ、2ちゃんねるに貼るとライセンスが
べんりなスクリプトまとめてあるサイトってどっかない?
15 :
名無しさん@お腹いっぱい。 :2007/02/02(金) 15:41:30 ID:d0qSqd6u0
greasemonkeyスクリプトなんですが,タイトルに特定の漢字が含まれているかの判断がうまくいきません。 日本語なのでコード違いが原因なのでしょうか?ページのキャラクターセットとスクリプトのキャラクターセットの合わせ方はどうすれば?あるいは前々見当違いの原因か? var title = new String(document.title); alert(title.indexOf("東")); としても「-1」しか表示されないのです。 よろしく
拡張スレで同じような質問を見た気がする。 エスケープシーケンスを使え。
17 :
名無しさん@お腹いっぱい。 :2007/02/03(土) 11:19:46 ID:dThaJRFA0
拡張スレの質問は見つけられませんでしたが var title = encodeURI(document.title); alert(title.indexOf('%E6%9D%B1')); でうまくいきました。thanks
unescapeをdecodeURIComponentにすればいいんじゃないかな よくわからんけど
>>21 ありがとうございます!文字化けしなくなりました
まとめサイトに置いてあるlinkifycustom.user.jsが、
「http〜」などの文字列の前に改行がない場合(に発生すると思われます)、
その前の文字列も<span>の中に含んでしまいませんか?
> <span>ほげほげ<a href="http〜">http〜</a></span>
↑こんな感じで。
これを解消する方法を教えてください。
というか<span>いらないので<a>にclassをつけてください。
あと
http://www.<em >example</em>.comみたいなのにも対応してください。
outsider reflexのText Link並みに高機能にしてください。
すみません言い過ぎました。
userChrome.js 用の *.uc.js でタブバーのコンテキストメニューにメニューアイテム追加する タイプのものの label 部分を日本語に書き換えると 何語かわからない記号みたいなのになってしまいます・・・ utf-8n LF で保存しています コンテントエリアのコンテキストメニューにメニューアイテムを追加するタイプのものだと 日本語に書き換えても変にならなかったんですが・・・ 日本語にする方法を教えてください
>>24 UCJS Loaderを使うか、Unicodeエスケープすればできるお( ^ω^)
>>25 さっそく unicode.xul を拾ってきました
うまくいきました
ありがとうございます
何度もすみません、 *.uc.xul って何個も同時に使えますよね・・・? a.uc.xul だけだと正常に機能して、また b.uc.xul だけでも正常に機能して、 a.us.xul と b.uc.xul を同時に使うと必ず同じほう一方だけが機能しなくなります・・・ userChrome.jsって名前にしたSub-Script Loaderから呼び出しています
ありがとうございます。勉強してきます
Sub-XUL Loader の uc.js を入れるの忘れていました・・・ Sub-Script Loader が Sub-XUL Loader の機能も持っているんだと思っていました Sub-XUL Loader を入れて複数の uc.xul が動作するようになりました 本当にすみませんでした
イベントリスナーで tab が切り替えられたときに document.getElementById("urlbar").value = gBrowser.currentURI.spec; みたいなのを登録しておけばいいんでは?
Sub-Script/XUL Loaderの更新きた?
userChrome.jsで軽量マウスジェスチャを使いたいのですが、 導入して右クリックしてもコンテキストメニューが表示されるだけです。 通常どのような挙動になるのでしょうか。
通常マウスジェスチャが動作します。
userChrome.jsは自分でスクリプト書ける人向けだから、 導入でつまずいているようでは先は長いがまあ頑張れ
39 :
名無しさん@お腹いっぱい。 :2007/02/15(木) 04:11:29 ID:et8EvULd0
以前、「Mozilla Firefox 拡張機能スレッド Part17」スレで紹介されていた userChrome.js のスクリプトで、サーチボタンを右クリックしたら検索BOXをクリアにするというものなのですが、 何故か左クリックの動作になってしまいます。 どなたかお分かりになられるようでしたら、どうかご教示願います。 /*-------------------------------------------------------------------- A user script for userChrome.js extension. -------------------------------------------------------------------- right-Click Search: assigns a search function to a right click. -------------------------------------------------------------------- (function() { // If it is necessary, the user please rewrite. const NewOrCurrent = false;// true: new tab, false: curent tab const TabFocus = true;// true: new tab is selected, false: not selected // The new tab or current tab is used. var SearchMain = function(event){ if ( event.button != 2 ) return; if ( NewOrCurrent && TabFocus) { var tab = getBrowser().loadOneTab("", null, null, null, true, false); gBrowser.selectedTab = tab; BrowserSearch.loadSearch(BrowserSearch.getSearchBar()._textbox.value, false); } else { BrowserSearch.loadSearch(BrowserSearch.getSearchBar()._textbox.value, NewOrCurrent); } event.preventDefault(); }; var searchbar = BrowserSearch.getSearchBar(); document.getAnonymousElementByAttribute(searchbar, "anonid", "search-go-button") .addEventListener("click", SearchMain, true); }());
event.button != 0
>>39 どう見てもそれは「右クリックで検索する」スクリプトだと思うんだけど
>>40-41 右クリックで検索BOXクリアとするには、どこを変更したら良いのでしょうか?
もしよろしければ教えてください。
>>42 どこを変更すればいいとか教えてやらねえよ!新しく一から書けよ
SCRAPBLOGからの転載
/*--------------------------------------------------------------------
* Clear Serch Box; This turns off the letter of the search box.
*/
(function() {
// If it is necessary, the user please rewrite.
const ClikType = 2;// 0: left, 1: mid, 2: right
// Clear Serch Box
var clearSearchBox = function(event){
if ( event.button == ClikType ){
var searchBar = BrowserSearch.getSearchBar();
if (searchBar){
var searchBox = searchBar._textbox || searchBar.mTextbox;
searchBox.value = '';
// Dispatch fake input event
var inputEvent = document.createEvent('Events');
if (inputEvent){
inputEvent.initEvent('oninput', true, true);
searchBar.dispatchEvent(inputEvent);
}
searchBar._textbox._displayCurrentEngine();
}
event.preventDefault();
}
};
var searchbar = BrowserSearch.getSearchBar();
document.getAnonymousElementByAttribute(searchbar, "anonid", "searchbar-engine-button")
.addEventListener("click", clearSearchBox, true);
}());
>>43 ありがとうございます。
これでやっと Fx2 に移行できそうです。(ToT)
45 :
名無しさん@お腹いっぱい。 :2007/02/15(木) 17:20:41 ID:iDmGC7Sc0
イーバンクの自動ログインを作りたいんだけど、 これで、動かないんだけど、どなたか訂正を・・・ (function() { document.INPUT_FORM.LOGIN_ID.value = ""; document.INPUT_FORM.LOGIN_PASSWORD.focus(); document.INPUT_FORM.LOGIN_PASSWORD.value = ""; document.INPUT_FORM.submit(); })();
46 :
名無しさん@お腹いっぱい。 :2007/02/19(月) 00:37:32 ID:1Gu+rURX0
get
youtubeで、コメント投稿者の名前の横に国籍を表示させる グリモンのスクリプトをだれか作ってくれないかな? コメントした人の国籍が結構気になったりすることがあるんだけど、その度に その人の名前をクリックしてプロフィールを確認するのが面倒なんで。 お願いしますエロい人!
>>48 どうせ
UCJS Loader経由させてないかOperaを別のとこにインスコしてる
というオチ
>>49 残念ながら双方ともクリアしてます。
IEもOperaも起動しないんです。
てきとーに作ってみた (function() { var m = document.getElementById("contentAreaContextMenu").appendChild(document.createElement("menuitem")); m.setAttribute("label", "IE"); m.setAttribute("oncommand", "ucjs_openIE();"); })(); function ucjs_openIE() { const IE_PATH = "C:\\Program Files\\Internet Explorer\\iexplore.exe"; var args = new Array(); args.push(window._content.location.href); var application = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile); application.initWithPath(IE_PATH); if (!application.exists()) alert("error: application doesn't exist\n" + IE_PATH); var process = Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess); process.init(application); process.run(false, args, args.length); }
よく考えてみたら、例としては LaunchIE が既にあるじゃないかw アホだ俺。 >48は LaunchIE を見ても改造できないのか?
54 :
48 :2007/02/22(木) 20:09:40 ID:SzT100540
Shift+Clickで新しいウィンドウを開かないようにできないでしょうか? TabMixPlusのシングルウィンドウモードでも、 新しいウィンドウを開いてからタブをマージする、という変な仕様だし。
Ctrl+Clickにすればいいだけの気もするがこんなんで (function() { eval('handleLinkClick = ' + handleLinkClick.toString().replace('openNewWindowWith(href, docURL, null, false);', 'openNewTabWith(href, docURL, null, event, false);')); })();
userchrome.jsをインストールしてUCJS Loaderを入れてみました。 まずはと、Restart FirefoxとCopy URL Liteを入れてみたところ、 どちらともメニューには追加されるのですが、選択しても何も実行されません。 どうしたら動作するようになるのでしょうか。
58 :
57 :2007/02/23(金) 10:28:38 ID:3T9BXO430
どうもMenu Editorが有効だと効かないみたいです。 調べてみても打開策が見つからないのですがどうしたらいいでしょうか… Menu Editorははずせないので…
>>58 Menu Editor の代わりになる userChrome.js スクリプトを書けばよし
60 :
名無しさん@お腹いっぱい。 :2007/02/23(金) 11:34:31 ID:jOfuY+4x0
Menu Editorが外せないならuserchrome.jsを外せばいいじゃない
>>59 めんどくさそう
>>60 やっぱそれしかないですかね
てことでuserChrome.jsはやめておくことにします。
ありがとうございました。
62 :
55 :2007/02/23(金) 13:51:09 ID:e7d3vXVL0
>>56 神ktkr!!
教えて貰ったのをさらに少し改造したら、
Ctrl+Click=バックグラウンドのタブで開く
Shift+Click=フォアグラウンドのタブで開く
っていう望むとおりの動作になりました。
(function() {
eval('handleLinkClick = ' + handleLinkClick.toString().replace('openNewTabWith(href, docURL, null, event, false);', 'var newTab = gBrowser.addTab(href);gBrowser.TMP_selectNewForegroundTab(newTab, true, href, null);'));
eval('handleLinkClick = ' + handleLinkClick.toString().replace('openNewWindowWith(href, docURL, null, false);', 'openNewTabWith(href, docURL, null, event, false);'));
})();
エクステンションをサイドバーに表示出来るものはないでしょうか。 All-in-One Sidebarは使いたくないもので、よろしくお願いします。
>>63 拡張無しでできる
chrome://mozapps/content/extensions/extensions.xul
を開いて、ブックマーク
ブックマークのプロパティを出して、サイドバーで開くにチェックを入れる
これでおk
>>64 そういう方法がありましたか・・・。
ありがとうございます。感謝感謝。
>>64 横d
追加で履歴とかダウンロードマネージャーを登録しとけば
切り替えパネル代わりになるね。これでAll-in-One Sidebar外せた
67 :
名無しさん@お腹いっぱい。 :2007/02/24(土) 14:06:44 ID:vHlMgWcE0
すんません 質問です。 userchrome.jsでキーボードショートカットの変更方法を教えてください。
>>62 とは逆に
Shift+Click=バックグラウンドのタブで開く
Ctrl+Click=フォアグラウンドのタブで開く
とすることはできるのでしょうか?
>>62 だとホイールクリックしたときフォアグランドにならないので困っています
69 :
68 :2007/02/24(土) 23:16:04 ID:3g5I76jp0
>>52 を使いオプションで
リンクをあたらしいタブで開いたとき〜〜〜にチェックをいれたらできました
70 :
名無しさん@お腹いっぱい。 :2007/02/25(日) 18:28:39 ID:LtAvVZD10
軽量ジェスチャがLinuxのFirefoxで動かなかったのでちょっと調べたら (たぶん)mousedown→mousemove→mouseup→contextmenu のイベントの流れが mousedown→contextmenu→mousemove→mouseup になってた。 mouseupの処理のところでcontextmenuをdispatchEventして解決。
// _state はわけわかんなかったので削除して 勝手に _isMoving = false に変更。 // なんか変なことやってるかもしれんので事故責任で。Winで動くかは知らね。参考までに。 handleEvent: function(event) { event = new XPCNativeWrapper(event); switch (event.type) { case "mousedown": if (event.button == 2) { this._isMoving = true; this._startGesture(event); } break; case "mousemove": if (this._isMoving) { this._progressGesture(event); } break; case "mouseup": if (this._isMoving) { this._stopGesture(event); this._isMoving = false; if (!this._directionChain) { this._displayContextMenu(event); } } break; case "contextmenu": if (this._isMoving) { event.preventDefault(); event.stopPropagation(); } break; } }, _displayContextMenu: function(e) { var evt = document.createEvent("MouseEvents"); evt.initMouseEvent("contextmenu", true, true, e.originalTarget.defaultView, 0, e.screenX, e.screenY, e.clientX, e.clientY, false, false, false, false, 2, null); e.originalTarget.dispatchEvent(evt); },
ちょうどLinuxで使ってみようと思っていたところなので助かりました
userChrome.jsの軽量マウスジェスチャで リンクを新しい前面タブで開く(↓→) リンクを新しい背面タブで開く(↓←) というジェスチャを追加したいのですが やり方が分からなくて困っております。 MouseGesturesのスクリプトも調べてみたのですが 該当するものはありませんでした。 どうすれば出来ますか ?
ジェスチャーでリンクを開くってどうやるの? URLにカーソルがあってる状態でそのジェスチャーを行うと リンクが指定した状態で開かれるとか?
言葉で説明すればたとえば マウスの軌道上のリンクを覚えて ジェスチャ終了時に一気に開く。 まぁ、このぐらいのスクリプトは自分で書けるよねぇ。
77 :
74 :2007/02/26(月) 23:17:20 ID:CW8Q9Li50
All-in-One Gesturesの「新しいタブで開き、そのタブを選択する」と 「リンクを裏のタブで開く」と同じ事をやりたかったのですが、 俺には無理でした。ギブアップです。 おとなしくAiOGesturesを使う事にします。 お騒がせしました。すいません。
OSXでも軽量マウスジェスチャ使えねーんだよな。ちぇっ
フォーラムのgm-modとかいうのと同じようなもの?
>>80 DLさせてもらったんですが
これってフォルダごとchromeフォルダに置けばいいですか?
それともフォルダの中身(.uc.jsとcontent/contextmenuフォルダ)を
直接置くものなんですか?
ごめんなさい、わかりました。 使わせていただきます。
84 :
80 :2007/03/03(土) 02:11:30 ID:ZpyRVK0A0
Greasemonkeyもどきの方のサンプルで入れてある
TextUrlAnchor.jsにバグが在ったので使う人は直して使ってください.
3行目の const XPATH…と言うのを↓に変更.
const XPATH = 'descendant::text()[(not(ancestor::a) and not(ancestor::pre) and not(ancestor::option) and not(ancestor::textarea) and not(ancestor::input) and not(ancestor::code) and not(ancestor::script) and not(ancestor::noscript))]';
>>81 gm-modと言うものを知らないので何ともかんとも.
Greasemonkeyもどきの方は,
ページの読み込みに反応して特定ディレクトリ下のスクリプトを実行するだけです.
>>84 TextUrlAnchor.jsですが
フレームのページに書いてあるURLには適用されないみたいです…
フレーム解除するとリンク貼ったURLになります。
TextUrlAnchor.jsでレンダリング速度が低下したよ。
Greasemonkeyのスクリプトを書き換えずにそのまま使えるようにしてほしいなー
適用ページの指定を
// ==UserScript==
// @include
// ==/UserScript==
から判断するように・・
>>81 Greasemonkey ModはGreasemonkeyを使いやすくするためのもので
Greasemonkeyがインストールされている必要があると思う
>>80 乙!頂きました。
SeaMonkeyで試させてもらうよ
89 :
名無しさん@お腹いっぱい。 :2007/03/03(土) 16:48:46 ID:9/wFjnM50
90 :
80 :2007/03/03(土) 18:02:10 ID:JBnNtzHM0
userChrome.js で質問です。 タブを開くときに、URIによって自動的にロックや凍結をさせようとしています。 gBrowser.addTab をオーバーライドしてほぼ希望通りにできたのですが、 新規タブのときにしか効きません。(addTabなので当たり前ですが…。) 同じタブでページがロードされても適用するにはどうすればいいでしょうか?
>>62 これは素晴らしい!
と思ったら自分の環境では両方ともバックグラウンドに。
調べてみたらTMPの[タブのフォーカス]-[リンクから開いたタブ]
の設定に依存するみたい。
このチェックを外している人は↓ですね。
(function (){
eval('handleLinkClick = ' + handleLinkClick.toString().replace('openNewWindowWith(href, docURL, null, false);', 'var newTab = gBrowser.addTab(href);gBrowser.selectedTab = newTab;'));
})();
>>90 dd
これでとりあえずTextLinkと翻訳パネルはアンインスコできるかな
JavaScript Actionsの標準スクリプトセットがまとめサイトから落とせなくなってる
99 :
名無しさん@お腹いっぱい。 :2007/03/05(月) 05:36:04 ID:VrwBrtrp0
JavaScript Actionsで質問 「タブを閉じる」のはどうやるの? window.close();にしたら窓閉じちゃったw 教えてエロイひと
>>94 それ酷いですねぇ
問題があると感じたらalcに言うのが筋で
あとは向こうで判断して当事者同士の話でしょうに
自分たちは正義だとか思ってんだろうか?
>>90 にグリモン用のユーザスクリプトをいくつか突っ込んでみました。
スクリプト書き換えなしで
使えたもの
TextareaResize
一応使えたけど微妙なもの
Greasemonkey - Mozilla Firefox まとめサイト
ttp://firefox.geckodev.org/index.php?Greasemonkey のアマゾンアソシエイトリンク系
表示はされるけどなぜか複数のリンクが書き出されてページの表示が激しく崩れる
ダメだったもの
googleにはてブユーザ数表示するヤツ
ステータスバーにSBMの被リンク数表示するの
新規タブをエディタにするやつ
俺は知識ないからスクリプトはいじらずファイル名だけreadme.txtに従ってつけた。
スクリプトいじれる人ならもっと使えるスクリプトあると思う。
なんにしろありがたく使わせてもらってる。
>>90
102 :
80 :2007/03/05(月) 21:55:35 ID:va3cIRIA0
お手数かもしれませんが jsファイル内のコメントだけじゃなくアーカイブにも バージョン番号を書いていただけるとありがたいですm(_ _)m
104 :
80 :2007/03/06(火) 20:36:41 ID:Ri4by6+T0
>>106 itsalltext.jsの533行目あたりの
for(i in documents) { を
for(var i in documents) { にすれば直るかな
Ctrl+Wで最後のタブを閉じるとウィンドウ自身が閉じてしまうのを止めようとして、 userChromeのスクリプトをかいたのですが、基本的には働いているようですが、 キーリピート時には、相変わらずダメなようです。 以下のスクリプトを添削していただけますか?
var ucjsKeyConfig = { init: function(){ gBrowser.mPanelContainer.addEventListener("keydown", this, true); }, uninit: function(){ gBrowser.mPanelContainer.removeEventListener("keydown", this, true); }, handleEvent: function(event){ event = new XPCNativeWrapper(event); if(event.type == "keydown"){ this._performAction(event); } },
_performAction: function(event){ switch(event.keyCode){ case 87: if(event.ctrlKey){ this._stopPropagation(event); if(gBrowser.mTabContainer.childNodes.length <= 1){ gBrowser.removeAllTabsBut(gBrowser.addTab("about:blank")); }else{ gBrowser.removeCurrentTab(); } } break; } }, _stopPropagation: function(event){ event.preventDefault(); event.stopPropagation(); } }; ucjsKeyConfig.init(); window.addEventListener("unload", function(){ ucjsKeyConfig.uninit(); }, false);
XPCNativeWrapper は必要ない
112 :
106 :2007/03/09(金) 10:49:14 ID:Q94e7ql/0
113 :
108 :2007/03/09(金) 12:15:21 ID:eJIOR25k0
>>111 上記ソースの
event = new XPCNativeWrapper(event);
を単純にコメントアウトしてみましたが状況変わらずでした。
そういうことをいっているわけではないのでしょうか?
>>108 Fx1.5の時にマウスジェスチャースレで教えてもらったんだけど、Ctrl+F4じゃダメかい?
>>108 >>114 わざわざそんなことしなくてもオプションの「常にタブバーを表示する」にチェックが入っていれば
勝手に閉じることはなくなるわけだが
116 :
108 :2007/03/10(土) 02:37:28 ID:qnLVKF9P0
>>115 >「常にタブバーを表示する」にチェック
にしています。
キーリピート時の話ですが、
閉じませんか?
>>114 こっちは閉じませんね。
が、ホームポジションを外すことになってしまうので。
なんか別口で考えた方がいいようです。
>>116 なんかの拡張が悪さしてないか?
こっちの方でも念のため新規プロファイル作って試したけど、チェックが入っていれば
勝手に閉じることはなくなった
>>108 TMP入れているなら、TMPのオプションから
イベント→タブを閉じる→キーボードショートカットで… をチェック
plainView: function() { if (gURLBar.value == "") return; //←追加 this.nBase.replaceChild(document.createTextNode(gURLBar.value), this.nBase.firstChild);
>>122 ロケーションバーのドメイン部分を太字で強調してくれるものです
Locationbar2にある一機能の簡易版です
124 :
80 :2007/03/10(土) 20:16:18 ID:nkwiTtk10
簡易マウスジェスチャで、 1つ上の階層へ移動する のはどうやればいいですか? 親切な人、スクリプトを教えてください。
var uri = gBrowser.currentURI; if (uri.path == "/") return; var pathList = uri.path.split("/"); if (!pathList.pop()) pathList.pop(); loadURI(uri.prePath + pathList.join("/") + "/");
TextLinkで 右クリックメニューに項目を追加していなくても 右クリックメニューが重くなってしまうのを 適当に修正 (function() { if (typeof TextLinkService != "object") return; eval('nsContextMenu.prototype.initItems = ' + TextLinkService.initItems.toString() .replace('var TLS = TextLinkService;', '$& if (!(TLS.getPref("textlink.contextmenu.openTextLink.current") ||\ TLS.getPref("textlink.contextmenu.openTextLink.window") ||\ TLS.getPref("textlink.contextmenu.openTextLink.tab"))) {\ this.showItem("context-openTextLink-current", false);\ this.showItem("context-openTextLink-window", false);\ this.showItem("context-openTextLink-tab", false); return;}')); })();
スクリプトについて質問です
ここにあるGoogle Logo Replacer(GoogleのロゴをFirefoxぽいやつに置き換える)というスタイルなのですが、
http://userstyles.org/style/show/76 Stykish や greasemonkey を使うときちんと反映されるのですが、
自分で、usercontent.cssや、userChrome.js(拡張インストール済)に保存すると反映されません。
置き換え自体は行われているようですが、ロゴが透明になってしまいます。
どうしてなのか分かる方いましたら、教えていただけないでしょうか。
*ファイルは間違いなく、chromeのディレクトリにおいてあります。
*usercontent.css→Show code のところのスクリプトを利用
*userChrome.js→Load as user script のところのスクリプトを利用
129 :
名無しさん@お腹いっぱい。 :2007/03/12(月) 20:18:22 ID:V9x3qZpq0
Greasemonkeyについて質問なんですが、
以下のスクリプトで、webページを開くorリロードしたら
一番下までスクロールするようにさせています。
(function() {
addEventListener('load', function(){
window.scroll(window.pageXOffset, document.body.offsetHeight);
}, false)
})()
ただ、最近の一部の2chの板(例えばニュー速
http://news23.2ch.net/news/ )
みたいにjavascriptでが必須のwebページでは動作しないみたい...
webページに組み込まれたjavascriptを読み込んだ後で、一番下まで
スクロールさせるようなスクリプトにできないでしょうか。
解決方法御存じの方いればレスください...
軽量マウスジェスチャで、 空白ページ上で左ダブルクリック でそのページにホームを開く というスクリプトはどう書けばいいんでしょう?
window.home();
132 :
108 :2007/03/14(水) 20:45:25 ID:CESDoNgf0
マウスの右ボタンを押しながらなにかされたらどうする(ロッカージェスチャ?)みたいのを実現しようと、 右ボタンが押されている最中かどうかのフラグをmousedownとmouseupでつくっているのですが、 mousedown時 flagをon mouseup時 flagをoff こんな具合です。 マウスカーソルがウィンドウの外にある時にボタンを放されてしまうとmouseupが起きてくれません。 カーソルがウィンドウの外に出たのを検出してやればよかろうと mouseoutってのをつかってみましたが、ありとあらゆるオブジェクト?のmouseoutらしいので、 ウィンドウの外というのを判定したいのですがどうすればよいでしょうか? もしくはWin32APIでいうところのGetAsyncKeyState的なものはありますか?
133 :
108 :2007/03/14(水) 20:47:28 ID:CESDoNgf0
>>118 遅レスすみません。その方法で解決できました。ありがとうございました。
Javascript+Firefox学習中なのでこの方面での解決法をもう少しさぐってみます。
Operaのように、ページのソースを左クリックでも新しいタブに開ける スクリプトはないでしょうか?
ミドルクリックでいいやん
ダブバーをWindowsのタスクバーのように自動で出し入れする。(拡張スレより転載) /* マウスオーバーしたらタブバーを表示 */ .tabbrowser-strip{ min-height:2px !important; max-height:2px !important; } .tabbrowser-strip:hover { min-height:24px !important; max-height:240px !important; }
firefox userChrome.js greasemonkeyスクリプトスレ とどう関係が・・・?
横でも表示(Tab Mix Plusでの例)
@上の>>下のuserChrome.cssに貼り付ける。
・userChrome.cssについてはここを参考にして下さい。→
http://www.mozilla-japan.org/support/firefox/edit A【Tab Mix Plusのオプション>表示>タブバー>ドロップインジケーター:>TMPに内蔵のスタイル】 を選択する。
【 "[新しいタブ]ボタンを表示" "[タブを閉じる]ボタンを表示" "両端にスペースを表示" 】 のそれぞれのチェックをはずす。
【Tab Mix Plusのオプション=>表示=>タブバー>一段に収まらないカズのタブを開いた場合、タブバーを:>スクロール可能にする】 に変更する。
Bタブ幅を変える方法
【userChrome.css>max-width:(好きな値)px !important;】 カッコに好きな値(数字)を入れて下さい。この値で最大幅が決まります。
【Tab Mix Plus>オプション=>表示=>タブ>タブ幅をページタイトルの長さに合わせて調節する】 にチェックを付ける。
【Tab Mix Plus>オプション=>表示=>タブ>タブ幅】 右側の最大値を変更。これでuserChrome.cssに書いた最大幅まで自由に幅を変える事が出来ます。
----------------------------------------------------------------------------------------------------------
○これは好みで変えて下さいね。
タブを右側に表示する。(右利きの人は右側が使いやすいです)
【Tab Mix Plus設定>表示>タブバータブバーの位置>下部にする】 とタブの位置が右側になります。
139 :
138 :2007/03/16(金) 20:36:55 ID:oyMqx1lz0
訂正 @上の>>下のuserChrome.cssに貼り付ける。 × @下のuserChrome.cssに貼り付ける。 ○
>>137 >>138 の奴書いた本人が、レスつかなかったからこっちにも転載したんじゃね。
まとめサイトのと人のcss並べて書いて
>横でも使用したいので、手探りですが、下のアドレスの「タブバーの表示位置を変える」を
>参考にして横にも表示出来るのようにしてみました。使用してみて下さい。
とか言ってるし。
141 :
138 :2007/03/16(金) 20:43:44 ID:oyMqx1lz0
>>137 すみません、userChrome.cssは関係ないのですか。スクリプトは詳しくないのここでいいのかと思いました。
転載をやめます。
142 :
80 :2007/03/16(金) 23:57:37 ID:2jZt1/PS0
userChrome.jsの小ネタを投下.既出だったらごめん. 「最近閉じたタブ」を履歴メニューからタブコンテキストメニューに移す. (function(){ var after = document.getElementById('tabContextUndoCloseTab'); var menu = document.getElementById('historyUndoMenu'); menu.setAttribute('disabled',false); after.parentNode.insertBefore(menu,after); document.getElementById('endUndoSeparator').style.display = 'none'; })(); 次いでロケーションバーからの入力を新規タブで開く. BrowserLoadURL = function(){ gBrowser.addTab(gURLBar.value); } 上の奴や,検索バーからの新規タブは空白タブを無視するので, 新規タブが開くときに空白タブを全て閉じる. gBrowser.tabContainer.addEventListener('TabOpen',function(event){ var tab = gBrowser.mTabs; var max = tab.length; for(var i = 0;i < max;++i){ if(tab[i] == event.target) continue; if(gBrowser.getBrowserForTab(tab[i]).contentWindow.document.URL == 'about:blank') gBrowser.removeTab(tab[i]); } },false);
ブックマーク、履歴、ホームを新しいタブで開くjsはないですか?
>>142 下のは同じ機能のスクリプトが他にもあったと思うけど、その別のと同じ不具合が出てるみたい
タブを切り替えた時にロケーションバーのアドレスが変わらないってヤツ。
つーかこの機能は本家が実装するつもりなのか、引っ込められたのかわからないけど、なぜか放置されたままなんだよね
追加。TMPの「選択範囲のリンクを新しいタブで開く」で複数のリンクを開くと、最後のリンクのみ開かれる。 >新規タブが開くときに空白タブを全て閉じる が引っかかってる模様。 類似の機能を持つ拡張などで、一時的に空白タブを開いてから処理してるものは全部ダメでしょうね ブックマークのフォルダから「タブですべて開く」でもアウトでした
146 :
80 :2007/03/17(土) 09:57:37 ID:wmg8j4+r0
>>144 直してみた.
BrowserLoadURL = function(){
var url = gURLBar.value;
gURLBar.value = gBrowser.userTypedValue = content.window.document.URL;
gBrowser.addTab(url);
}
>>145 これも直してみた.多分これで大丈夫かと.
(function(){
function _callbackLoad(event){
var doc = event.originalTarget;
var win = doc.defaultView || doc.parentWindow;
var top = win.top || win;
top.blank = (top.document.URL == 'about:blank');
}
var first = true;
gBrowser.tabContainer.addEventListener('TabOpen',function(event){
gBrowser.getBrowserForTab(event.target).addEventListener('load',_callbackLoad,true);
var win,tab = gBrowser.mTabs,max = tab.length;
for(var i = 0;i < max;++i){
if(tab[i] == event.target) continue;
win = gBrowser.getBrowserForTab(tab[i]).contentWindow;
if(win.blank || (first && win.document.URL == 'about:blank')) gBrowser.removeTab(tab[i]);
}
first = false;
},false);
})();
ロケーションバーのやつはバックグラウンドで開く仕様?
フォアグラウンドで開くやつキボンヌ
149 :
80 :2007/03/17(土) 16:41:23 ID:mUq/uV6P0
>>143 ホームボタンクリックを新規タブで.
eval(BrowserHomeClick.toString().replace('loadOneOrMoreURIs','gBrowser.addTab'));
ブックマークと履歴を新規タブで.
document.getElementById('bookmarks-menu').setAttribute('oncommand','event.button = 1; BookmarksMenu.loadBookmarkMiddleClick(event,this.database);');
document.getElementById('go-menu').setAttribute('oncommand','gBrowser.addTab(event.target.getAttribute("statustext"));');
document.getElementById('sidebar-box').addEventListener('load',function(event){
var id = event.target.firstChild.id;
var doc = event.target;
if(id == 'bookmarksPanel'){
var bm = doc.getElementById('bookmarks-view');
eval('bm.openItemClick = ' + bm.openItemClick.toString().replace('var browserTarget = whereToOpenLink(aEvent);','var browserTarget = "tab"'));
}
else if(id == 'history-panel'){
var ht = doc.getElementById('historyTree');
var nt = doc.getElementById('miOpenInNewTab');
var oc = ht.onclick;
var newTabFlag = false;
function _callbackTabOpen(event){
newTabFlag = true;
gBrowser.tabContainer.removeEventListener('TabOpen',_callbackTabOpen,false);
}
ht.onclick = function(event){
newTabFlag = false;
gBrowser.tabContainer.addEventListener('TabOpen',_callbackTabOpen,false);
nt.doCommand();
if(!newTabFlag) oc(event);
};
}
},true);
150 :
80 :2007/03/17(土) 16:44:55 ID:mUq/uV6P0
>>148 言われて自分でもフォアグラウンドの方が便利だと気づいた.
BrowserLoadURL = function(){
var url = gURLBar.value;
gURLBar.value = gBrowser.userTypedValue = content.window.document.URL;
gBrowser.selectedTab = gBrowser.addTab(url);
}
>>146 確認しました。両方とも問題なしです。乙
>>150 ありがと
ついでに、alt+Enter だと、従来どおり同じタブで開くっていう挙動だとありがい
>>149 「ブックマークと履歴を新規タブで」も試してみました。
ブックマークの個別アイテムのプロパティで「このブックマークをサイドバーで読み込む」
にチェックを入れたアイテムも、強制的にタブで開いてしまうようです
>>150 神現る!
本当に書いてくれるなんて・・・
そこで悪いんですけど履歴がバックグランドで開くのも仕様?
あとブックマークツールバーフォルダが新規タブで開かれないようになっているようです 何度もすいません
便乗して・・・おんぶにだっこで申し訳ないのですが 各ucファイルにかっこいい英語の名前を付けてください お願いしますm(_ _)m ・ロケーションバーからの入力を新規タブで開く ・ブックマークと履歴を新規タブで開く ・ホームボタンクリックを新規タブで開く ・新規タブが開くときに空白タブを全て閉じる
すみませんこれもでした・・・ ・最近閉じたタブ」を履歴メニューからタブコンテキストメニューに移す
158 :
80 :2007/03/18(日) 00:14:20 ID:JkuJKLwg0
ブックマークと履歴を新規タブで開く奴だけど,長すぎて書ききれないので取りあえずサイドバーのみ. サイドバーに開いたりブックマークレットに対応.ミドルクリックで現在のタブに開く. document.getElementById('sidebar-box').addEventListener('load',function(event){ var id = event.target.firstChild.id; var doc = event.target; if(id == 'bookmarksPanel'){ var bm = doc.getElementById('bookmarks-view'); eval('bm.openItemClick = ' + bm.openItemClick.toString() .replace('var browserTarget = whereToOpenLink(aEvent);', 'var browserTarget = (BMDS.GetTarget(selection.item[0],RDF.GetResource(gNC_NS + "WebPanel"),true)' + ' || /^javascript:/i.test(BookmarksUtils.getProperty(selection.item[0].Value,gNC_NS+"URL",this.db))' + ' || (aEvent.button == 1)) ? "current" : "tab";')); } else if(id == 'history-panel'){ var ht = doc.getElementById('historyTree'); var ct = doc.getElementById('miOpen'); var nt = doc.getElementById('miOpenInNewTab'); var oc = ht.onclick; var opened = false; function _callbackTabOpen(event){ opened = true; } ht.onclick = function(event){ opened = false; gBrowser.tabContainer.addEventListener('TabOpen',_callbackTabOpen,false); if(event.button == 0) nt.doCommand(); else if(event.button == 1){ ct.doCommand(); opened = true; } gBrowser.tabContainer.removeEventListener('TabOpen',_callbackTabOpen,false); if(!opened) oc(event); }; } },true);
159 :
80 :2007/03/18(日) 00:16:50 ID:JkuJKLwg0
続き.ブックマークメニュー,ブックマークツールバー,履歴メニューを新規タブで開くように.
ミドルクリックで現在のタブに開く.
サイドバーに開いたりブックマークレットには対応しとりません.
(function(){
var bmtb = document.getElementById('bookmarks-ptf');
bmtb.setAttribute('oncommand','event.button = 1; BookmarksMenu.loadBookmarkMiddleClick(event,this.database);');
bmtb.setAttribute('oclick','BookmarksMenu.loadBookmark(event,event.target,this.database);');
var bmm = document.getElementById('bookmarks-menu');
bmm.setAttribute('oncommand','event.button = 1; BookmarksMenu.loadBookmarkMiddleClick(event,this.database);');
bmm.setAttribute('oclick','BookmarksMenu.loadBookmark(event,event.target,this.database);');
var hm = document.getElementById('go-menu');
hm.setAttribute('oncommand','gBrowser.addTab(event.target.getAttribute("statustext"));');
hm.setAttribute('onclick','openUILink(event.target.getAttribute("statustext"),event,false,true);');
})();
>>152 alt+enterなんて知りませんでした.
BrowserLoadURL = function(event){
var url = gURLBar.value;
gURLBar.value = gBrowser.userTypedValue = content.window.document.URL;
if(event.altKey) gBrowser.contentWindow.location.href = url;
else gBrowser.selectedTab = gBrowser.addTab(url);
}
>>156 当方小物は全部 misc.uc.js と言うファイルにぶち込んでおります.
強いて名づけるなら LocationbarNewTab BookmarkNewTab HomebuttonNewTab AutoCloseBlankTab UndoListInTabmenu
とかどうでしょか?そのまんまだけど.
>>159 命名のしかたがストレートで気持ちがいい
ところでURLバーからの入力を新規タブで開くスクリプトなんですが
入力した文字列をすべてUTF-8に変換して開くにはどうすればいいですか?
ホームボタン新規タブスクリプトが、バックグラウンドで新規タブを開きます。 履歴メニュー新規タブスクリプトが、 現在のタブが空白タブの場合はその上にページを表示します。 現在のタブが空白タブではない場合はその上にページを上書きしさらに 新規タブでページを表示します。 これらは仕様?ですか?
あとUndoListInTabmenuですが 履歴がない場合(起動直後など)に タブコンテキストメニューを表示させると 「最近閉じたタブ」の文字がグレーアウトされてなくて その項目をマウスオーバーするとそれ以降から文字がグレーアウトされるようになります。 また文字がグレーアウトしてからタブを一つ閉じると その一つ目の閉じたタブが「最近閉じたタブ」に反映されず 二つ目のタブを閉じた時点で一つ目のタブ(と二つ目のタブ)が 「最近閉じたタブ」に反映されます。
すみません、さらに追記ですが
LocationbarNewTabを導入すると
ページ上のURLっぽい文字列(
http:// 〜)を選択して
ロケーションバーにドラッグ&ドロップするとそのURLを開くという機能が効かなくなるようです
タブバー上にドラッグ&ドロップでもいけるのですが
ロケーションバーへのドラッグ&ドロップもよく使っていたので少し気になりました
図々しい要求の数々に80さんがキレてしまう予感・・・
>>164 ここもともとクレクレなスレだしな。
最近良スレになってたけどまた糞スレに戻りそうだ。
文字を書き込み可能な場所以外にフォーカスがあるときは 常にIMEをOFFするスクリプトをよろしくお願いします
とりあえず新規タブで開いて空白タブがあれば閉じる ではなく カレントが空白タブならそこに開いて空白タブ以外なら新規タブで開く がいい です
TMPに代表されるタブ系エクステンションを排除出来た。
分からないなりにやってみた。 履歴メニューを新規タブでフォアグラウンドに >hm.setAttribute('oncommand','gBrowser.addTab(event.target.getAttribute("statustext"));'); >hm.setAttribute('onclick','openUILink(event.target.getAttribute("statustext"),event,false,true);'); 上の行を以下に変更 hm.setAttribute('oncommand','gBrowser.selectedTab = gBrowser.addTab(event.target.getAttribute("statustext"));'); 下の行はコメントアウト ミドルクリックは分かりません。
171 :
80 :2007/03/19(月) 00:39:27 ID:BNahYlbN0
>>161-163 履歴メニューまわりはバグなので後で潰しておきます.
「最近閉じたタブ」は本当にただ移動してメニューを有効化しただけなので,
動作について何も考えとりません.後で調べておきます.
ロケーションバーへのドロップも調べておきます.
新規タブが大体バックグラウンドで開かれるのは,firefoxの基本動作によるところです.
コンテキストメニューから「新しいタブで開く」等を選択した場合と同じ動作になると思われます.
また,一部を除き基本的にバックグラウンドで開かれた方が当方としては使いやすいので,
フォアグラウンドで開くと言う動作に関してあまり積極的ではありません.
ホームボタンはフォアグラウンドで開いた方が便利そうなので直しておきます.
>>168 新規タブで開く各機能毎に空白タブを探すコードを追加するのを好みません.
それに,常に一番右側に開いてくれる方が好みですので.
userContent.js もその内出るのかな
textarea等でも文字列選択して右クリック→検索できるようにする (function() { eval('getBrowserSelection = ' + getBrowserSelection.toString().replace( 'var selection = focusedWindow.getSelection().toString();', 'var el = document.commandDispatcher.focusedElement; try { var selection = el.value.substring(el.selectionStart, el.selectionEnd); } catch(e) { selection = focusedWindow.getSelection().toString(); }' )); })(); 右クリック→検索の時に 中クリックもしくはCtrlキー押しながらで 入力ダイアログを表示して編集してから検索 (function() { BrowserSearch.loadSearchOriginal = BrowserSearch.loadSearch; BrowserSearch.loadSearch = function(searchText, useNewTab, e) { if (e.ctrlKey || e.button == 1) { var inputtext = prompt("Enter search word", searchText); if (inputtext) this.loadSearchOriginal(inputtext, useNewTab); else return; } else this.loadSearchOriginal(searchText, useNewTab); } document.getElementById("context-searchselect").setAttribute("oncommand", "BrowserSearch.loadSearch(getBrowserSelection(), true, event);"); document.getElementById("context-searchselect").setAttribute("onclick", "checkForMiddleClick(this, event)"); })();
>>173 「userContent.js」でググレ
176 :
名無しさん@お腹いっぱい。 :2007/03/19(月) 16:08:46 ID:HsYC5hjd0
でっていう
177 :
80 :2007/03/19(月) 18:04:03 ID:bV9ifK9A0
ホームボタンをクリックで新タブフォアグラウンド. eval(BrowserHomeClick.toString().replace('loadOneOrMoreURIs','gBrowser.selectedTab = gBrowser.addTab')); 「最近閉じたタブ」をタブコンテキストメニューに. (function(){ var after = document.getElementById('tabContextUndoCloseTab'); var menu = document.getElementById('historyUndoMenu'); after.parentNode.insertBefore(menu,after); document.getElementById('endUndoSeparator').style.display = 'none'; menu.parentNode.addEventListener('popupshowing',function(){ menu.setAttribute('disabled',false); },false); })(); タブが新たに開いたとき空白タブを消す. ブラウザ起動時に開いているタブの挙動がおかしかったので修正. (function(){ function _callbackLoad(event){ var win = event.currentTarget.contentWindow; win.blank = (win.document.URL == 'about:blank'); } var tab = gBrowser.mTabs,max = tab.length; for(var i = 0;i < max;++i){ gBrowser.getBrowserForTab(tab[i]).addEventListener('load',_callbackLoad,true); } gBrowser.tabContainer.addEventListener('TabOpen',function(event){ gBrowser.getBrowserForTab(event.target).addEventListener('load',_callbackLoad,true); var win,tab = gBrowser.mTabs,max = tab.length; for(var i = 0;i < max;++i){ if(tab[i] == event.target) continue; win = gBrowser.getBrowserForTab(tab[i]).contentWindow; if(win.blank) gBrowser.removeTab(tab[i]); } first = false; },false); })();
178 :
80 :2007/03/19(月) 18:05:28 ID:bV9ifK9A0
ロケーションバーから新規タブ.ドロップに対応.
BrowserLoadURL = function(event,post){
gBrowser.userTypedValue = content.window.document.URL;
if(event && event.altKey) loadURI(gURLBar.value,null,post,true);
else gBrowser.loadOneTab(gURLBar.value,null,null,post,false,true);
}
>>160 ロケーションバーからの入力は自動的にUTF-8になると思います.
なっていないようでしたら↑の奴使ってみてください.
New Tab and Goそのものを参考にした方がいいんじゃね
2ちゃんねるのURLを指定した2chブラウザで開くにはどうしたらいいのでしょうか?
userChrome.js userComponent.js userContent.js すべて揃ったわけだが
>>159 「タブですべて開く」が使えないのですが、直りませんでしょうか。
userLocale.dtdキボンヌ
mixi images overlayとGreased Lightboxが一緒になったようなスクリプトってないですか?
>>183 自己レス
別の環境では使えたけど、今度はブックマークや履歴から新規タブが使えず・・・
訳分からん(´・ω・`)
New Tab and GoってFx2.0だと使えないんだよね。
188 :
80 :2007/03/20(火) 17:42:50 ID:4wjBepKb0
ブックマークと履歴を新規タブで開く奴.
今回はメニューもサイドバーもまとめて一つにしてあって長いので,アップローダーに上げました.
パスは「newtab」で.
http://s-io.net/up/1/_/jump/1174379986486034.EbTVTH 主な変更点はメニュー周りのバグ修正と,フォアグラウンド対応,「タブですべて開く」も新規タブで開くように.
3行目の「true」を「false」にするとブックマーク,
4行目の「true」を「false」にすると履歴がフォアグラウンドで開くようになる.
5行目の「true」を「false」にすると「タブですべて開く」が従来どおりの動作になる.
>>186 同様の機能を持った拡張と相性が悪くバージョン依存も激しいかと.
当方ではfirefox2.0.0.2で確認しております.
今回のでバージョンに依存する部分が減ったので改善しているかもしれません.
2chでばらばら出されても糞の役にもたたんな。 ただログに埋もれていくだけ。 誰かまとめれや。
>>188 BHNewTabOpen.uc.jsをいれると最近閉じたタブを表示すると
ひとつタイトルなしのタブが余分に開かれるようです
>>188 26行目のbmmは、hmのタイプミスではないでしょうか?
193 :
80 :2007/03/21(水) 21:12:29 ID:gQyDLM3B0
Googleではてブ登録数表示とかオートページはありますが、 Windows Live Searchで同様のことが出来るGreasemonkeyスクリプトはないですか?
新規タブを開いたときにホームページを表示するスクリプトってありますか?
>>193 falseを指定してもフォアグランドで表示しないようです
すいません問題なくフォアグラウンドで表示されました
firebug で urlbar とかの XUL DOM は参照できないよね?
Firefoxまとめサイトにスレのテンプレ作っとこうかと思ったのだけど JavaScript Actions Custom Buttons Keyconfig 辺りも一応管轄内ってコトで載せといていいかな?需要は少なそうだけど。
テンプレすらいらねぇ
「Element Resizer」っていうスクリプトを入れたんですが、テキストエリア内に文章を書くときも 常に赤いマークが出てきて邪魔なんですが、消すことは可能でしょうか? 拡張の「Resizable Textarea」のように、テキストエリアの線に持っていったときだけ リサイズ用のカーソルが出るようにしたいんです。
そう
唐突でスイマセン jsファイルを開くのは違法なんですか?
ばれなければおk。
/⌒ヽ ジャナーイ ジャナーイ 二( ゜々゜)二⊃ ジャナーイ /⌒ヽ | / /⌒ヽ ⊂二二二( ゜々゜)二⊃ ジャナーイ ⊂二二二( ゜々゜)/⌒ヽ | /ジャナーイ ノ>ノ ⊂二二二( ゜々゜)二⊃ ヽノ /⌒ヽ ジャナーイ レレ ( ヽノ| / ノ>⊂二二二( ゜々゜)二⊃ ノ /⌒ヽ ヽノ レレ | / ジャナーイ ⊂二二二( ゜々゜)二⊃ /⌒ヽ ( ヽノ | ⊂二二二( ゜々゜)二⊃ ノ>ノ ジャナーイ ジャナーイ ( ヽノジャナーイ | / レレ ジャナーイ ノ>ノ ( ヽノ ジャナーイ 三 レレ ノ>ノ ageage隊 参上!!!
userMenu.uc.jsの、 [menu,dummy] = _createSubMenu(ほげほげ) って一度に代入する部分がエラーになるのは1.5だから?
>>209 んだね,JavaScript version1.7がいるんじゃないかな。
UCJS Loaderでだめかな?
一時変数に代入すればいいだけなので特に問題ないです。 CcとかCiをいちいち定義する必要があるのも、JavaScriptのバージョンのせいなのか、自分が何か間違ってるのか
browser.xulでCcとCiが使えるのはFx2以降。
BOM付いてますよ
>>214 本当だ、かなり初歩的なミスですね○| ̄|_
レス、激しくトンクスです。
_| ̄|○| ̄|_ シャムの双生児
217 :
名無しさん@お腹いっぱい。 :2007/04/09(月) 06:56:50 ID:SUAUCZh40
userMenu.jsを使って、テキスト入力欄のコンテキストメニューからスクリプトを実行して、 テキスト入力欄に文字を入力したいのですが、メニューを出したテキスト入力欄は スクリプトの中でどのように取得したらいいのでしょうか
すみません。今わかりました。 this.window.document.commandDispatcher.focusedElement; でいけますね。
うーむ、userChrome.js + UCJS Loader 使ってるんだけど、 Fx 起動するたびに効いたり効かなかったりする。 再現性がないので原因が特定できん…。 誰か似た症状の人いない?
>>219 同じく。10個以上スクリプト入れてるが、
たまに最初の8個のスクリプトしか効かないときがある。
でもDOM Inspectorで見るとscript要素自体はちゃんと挿入されてる。
まれにまったく効かないときもある。
経験的には、ほかのソフトやらの影響で
OS自体が重くなってるときに発生しやすい気がする。
ちなみにWinXP、Fx2.0.0.3ね。
そういえばFx2.0.0.2にアップデートしてから
発生するようになったような気もする。
>>221 それでも xul が複数あったりすると読み込みミスったりするのよね
>>219 >>220 使ってるUCJS Loaderが通常版なら、Bug364692修正対応版に差し替えてみそ。
俺のところではこれで直った。
むむむ…。紹介してくれた他のサブスクリプトローダーを試す前に 原因を突きとめようと --- 1.uc.js --- (function test() { var aConsoleService = Components.classes["@mozilla.org/consoleservice;1"]. getService(Components.interfaces.nsIConsoleService); aConsoleService.logStringMessage("1 OK"); })(); といったスクリプトを20個ほど用意して動かしてみると、全く 読み込みが失敗しなくなってしまった。やっぱりタイミングの 問題っぽいね。 とりあえず原因不明ながら、これで回避できてるってことで よしとするかなぁ。
>>224 タイミングの問題なら setTimeout を大きくすれば
227 :
名無しさん@お腹いっぱい。 :2007/04/11(水) 10:07:23 ID:mD2kAByY0
googlepreviewを入れているんだが、GoogleAutoPager って検索結果が20件以降がサムネイル表示されないんだけど表示されるようにできないか?よろしく頼む
228 :
227 :2007/04/11(水) 10:11:14 ID:mD2kAByY0
ちなみに2.0.0.3使用。連投すまそ
GreasemonkeyのBookmarklet化ってどの部分を使えばいいんだ?
全てのFLASHの画質を低にしてくれるのとかってないですかね
233 :
80 :2007/04/14(土) 17:26:37 ID:9gdmZZcP0
久しぶりにuserContent.jsとuserMenu.jsの新しいのを上げておいた.
パスは magai で.
userContent.js ver.0.4
http://s-io.net/up/1/_/jump/1176538995354334.WzB3Tl userMenu.js ver.0.3
http://s-io.net/up/1/_/jump/1176539053209935.eSvm29 共通の更新内容
・Stringに文字コード変換メソッドを追加.
・デストラクタを設定できるように.
userContent.js の更新内容
・サイドバーで開いたドキュメントにも有効に.
userMenu.js の更新内容
・コンテキストメニューからの呼び出し時に,gContextMenuを渡すように.
・同呼び出し時のwindowオブジェクトを,コンテキストメニューを開いた場所のオブジェクトに.
あんまり変更点が無いのでサンプルを増量しといた.
それとプリロードサンプルも同封.
以前のでは動かなかったGreasemonkey用スクリプトが動くかも知れない.
>>217 既に解決されているようなので何なんですが,gContextMenu.targetで取得できるようになりました.
>>233 乙です!
引き続きSeaMonkeyで使わせてもらいます
236 :
234 :2007/04/15(日) 21:40:05 ID:QVUccdzN0
>>233 スレ違いなのでなんなんですが、一応報告です
SeaMonkeyではホスト単体でも動作しなくなりましたorz
237 :
80 :2007/04/16(月) 00:50:18 ID:AtSAjAf00
>>236 userContent.uc.jsやuserMenu.uc.jsの先頭の
(function(){
の次の行に以下の二行を加えてみてください.
const Cc = Components.classes;
const Ci = Components.interfaces;
238 :
234 :2007/04/16(月) 02:50:58 ID:yrQNItr10
>>237 さっきまで悩み続けていましたが、二行を加えて
いまホスト単体での動作確認しました。
朝、起きられなくなるので今日は寝ますが
ありがたく使わせて頂きますね。
FFとはずれていますが、レス頂きありがとうございました。
// ==UserScript== // @name "alt to title" in img // @include * // ==/UserScript== (function() { var i, img = document.getElementsByTagName("img"); for(i = 0; i < img.length; i++) { if(img[i].alt && !(img[i].title)) { img[i].title = img[i].alt; } } })(); 思うところがあって書いたPopup ALT AttributesをGreasemonkeyで再現するスクリプト altに値があってtitleに無い場合に、titleにaltをコピってるだけ 当然ながら折り返しはできず
userMenu.jsにタブ用メニュー対応希望
ついでに trunk にも対応してもらえるとウレシイ、実力ではチョット無理みたい。
80氏のスクリプト どこにあるんだろな…
googleで検索した時に、(右か下かに)del.icio.usの自分のブックマークの検索結果も表示されるようにしたいんですが、適当なgreasemonkeyスクリプト等があれば教えて下さい。
greasemonkeyのおすすめのスクリプトを教えてください。
userChrome.js0.8ってどっかにxpiのアーカイブ置いてある? zenikoさんとこもフォーラムも見たけど、見あたらない FxはbugzillaからCGI経由でいいだろうけど、だば子が・・・orz
cgiのリンクをファイル保存でリネームすればいいじゃない。
>>247 Greased Lightbox
GoogleAutoPager
Focus Field
Bright Focus
らへんが割とオススメ
253 :
名無しさん@お腹いっぱい。 :2007/04/24(火) 08:41:23 ID:ssx3rzmz0
スペックにもよるだろうけど、だいたいどのくらいの数のスクリプトを入れたら動作が重くなってくもんだろ?俺は6つ入れている。みんなは?
>>253 1個だけでも重くなることは想定できる
要はスクリプトの内容。
url breakerとかそんな感じの入れて<wbr>だらけのページ開くと五分ぐらいかかる。
256 :
名無しさん@お腹いっぱい。 :2007/04/24(火) 14:52:04 ID:GTspjmZH0
ページ移動しないではてブ登録/編集/削除が出来るようなスクリプトありますか? 前はいぬビームの使ってたけど、なくなった後にFirefoxが壊れてなくなっちゃったもんで。
257 :
80 :2007/04/24(火) 18:04:01 ID:sNxXGWDT0
>>257 dです。いただきました。
>trunkの事はよく知らないけれど,3.0a4preとやらで動作確認してみました.
userContent.js ver. 0.5 だけですが
Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9a3) Gecko/20070322 GranParadiso/3.0a3
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a4pre) Gecko/20070421 Minefield/3.0a4pre
で動作確認できました。
チナミニ、Japanize のスクリプト版が問題なく動いています。
259 :
258 :2007/04/24(火) 20:37:09 ID:UDHT4MlT0
>>257 >userMenu.js は前の0.3でも動くと思います.駄目だったら新しいのを試してみてください.
userMenu.js は使っていなかったので未確認でしたが 0.3/0.4 でOKでした。
FlashBlockの代わりを務められるようなスクリプトは、ありませんでしょうか。
262 :
名無しさん@お腹いっぱい。 :2007/04/26(木) 19:21:39 ID:ksmH1m+a0
>>261 userContent.cssに
/* Block Flash, using a placeholder you can click to unblock a desired Flash animation. */
/* Doesn't work for embed tags, which are less common than object tags - bug 190970 */
object[classid$=":D27CDB6E-AE6D-11cf-96B8-444553540000"],
object[codebase*="swflash.cab"] {
-moz-binding: url("
http://www.cs.hmc.edu/~jruderma/flash.xml#obj "); }
263 :
名無しさん@お腹いっぱい。 :2007/04/28(土) 13:01:33 ID:MHRbrJ8L0
sage忘れた・・
Greased Lightboxとても便利なんですけど 上に表示されるバー?が、大きい画像の時とか邪魔なんですけど 隠す事って出来ないのでしょうか?
>>265 スクロールしたり上のバーの-を押して画像を縮小じゃだめ?
>>266 大きい画像だとスクロール出来ないので、縮小で我慢するしかないですかね?
>>267 じゃあ419行目を
objMenu.style.display = 'none';
にして拡大縮小などはキーボードからやるってのはどう?
というか、透過されてるんだから全然見えなくは無いのに
それでも困るってどういう状況?
269 :
265 :2007/04/30(月) 21:24:43 ID:q9Qq8dJ00
>>268 いや性格的な問題です;
ちゃんと全体が見えないと気持ち悪かったものですから
マウス派なので、やっぱり我慢して使います。
わざわざありがとうございました。
>>270 例えば
/* サイドツールバーの幅を狭くする */
#aios-toolbar {
max-width: 28px !important;
margin-left: 0px !important;
margin-right: 0px !important;
}
/* サイドツールバーのボタンの間隔を狭くする */
#aios-toolbar, toolbarbutton {
margin-top: -2px !important;
margin-bottom: -2px !important;
}
こんなかんじ?
素人丸出しで申し訳ないんですが、greasemonkeyを使って 特定の文章を別の文章に置換するスクリプトってありませんか? 出来ればいくつか同時に置換できると助かるんですが あと、そういったスクリプトで 「・・・・・・」→「……」 「・・・・・」→「……」 「・・・・」→「……」 みたいに一部が重なってるのを置換出来ると嬉しいです
japanize
274 :
270 :2007/05/01(火) 20:05:33 ID:i6K5bhIt0
すいません、JSActions 2.3.0のスクリプトの事で質問です。
EmEditorを起動するだけの単純なスクリプトなんですが、以下のように記述してもエラーが出てしまいます。
var EmEditorPath = "C:\\Program Files\\EmEditor\\EmEditor.exe";
_jsaCScript.exec(EmEditorPath);
ちなみにその時のエラー画面です↓
http://bebe.run.buttobi.net/up/src/be_0373.jpg Fxのバージョンは2.0.0.3です。
1.5系の時はこれで動いていたのですが、2.0系から動かなくなりました。
どこがいけないんでしょうか?
Javascript Actionsの設定でScript Folderを設定した?
>>276 はい、してます。
他のスクリプトは正常に動いてます。
ダミーで文字引数を追加するか, jsactions.jarのcdcript.jsの該当箇所を下記の如く修正する。 // aFilePath で指定されたアプリケーションを、aArgs を引数として起動する // include Bug-Track 7 exec: function(aFilePath, aArgs, blocking){ var localFile = this._getLocalFile(aFilePath); if(!localFile) return false; var argArray = new Array(); if(aArgs) if(aArgs instanceof Array) argArray = aArgs; else argArray = aArgs.toString().split(" "); if(!blocking) blocking = false; var process = Components.classes['@mozilla.org/process/util;1'] .getService(Components.interfaces.nsIProcess); try{ process.init(localFile); process.run(blocking, argArray, argArray.length); }catch(e){ alert(e); return false; } return true; },
>>278 おお、修正してみたらできました!
ありがとうございます。ペコリm(_ _)m
280 :
272 :2007/05/02(水) 01:16:39 ID:k0lM3FY+0
読み直したら質問文が変だったので。 特定の文字列を別の文字列に変換するgreasemonkeyのスクリプトを探しています。 出来れば複数の文字列を同時に置換出来るものがあると助かります。 一応ググってはみたんですが、なかったもので。 それと、もしそういったスクリプトがあっても、全角を変換することは出来ないんでしょうか?
>>280 用途が思いつかんので,私は作ろうとは思わない。
だから他の人も作る必然性がなかったんじゃないかな。
おもしろい用途があるなら,それをプレゼンしてみたらいかがでしょう。
そしたら心優しい人が作ってくれるかもしれません。
無いなら作ればいいのよ 自分で
284 :
280 :2007/05/02(水) 05:19:42 ID:k0lM3FY+0
>>282 参考にしながら作ることが出来ました。どうもありがとうございます
自分がネットで小説を読んだりするのですが、「…」が「・・・」と表記されていたりするのが読みにくいので、
そういったのを読みやすく出来ればと思って探していたんです
全角はUnicodeに変換すればいいだけだと長いこと気付かず
ド素人丸出しの恥をさらしてしまった……
まとめサイトからリンクされてるPaste and Goを使ってみたら ロケーションバーにはPaste and Goが出ますが検索バーには出ません。 検索バーにもPaste and Goを出すにはどうしたらいいのでしょうか?
SCRAPBLOG に便利なのがあるから探せ
>>286 それ使ってみたら検索バーの方が出ないんだ…。
おれのやつ (function() { var searchbar = document.getElementById("searchbar"); searchbar._textbox.addEventListener("popupshowing", function(aEvent) { var menupopup = aEvent.originalTarget; var refChild = menupopup.getElementsByAttribute("cmd", "cmd_paste")[0]; var canPaste = refChild.getAttribute("disabled") == "true"; var menuitem = document.getElementById("pasteandsearch-menuitem"); if (!menuitem) { var pasteAndSearch = function(aEvent) { if (aEvent.type == "click" && aEvent.button != 1) return; // paste goDoCommand("cmd_paste"); // and search searchbar.handleSearchCommand(); // close popup menupopup.hidePopup(); }; menuitem = document.createElement("menuitem"); menuitem.id = "pasteandsearch-menuitem" menuitem.setAttribute("label", "Paste and Search"); menuitem.setAttribute("accesskey", "E"); menuitem.addEventListener("command", pasteAndSearch, false); menuitem.addEventListener("click", pasteAndSearch, false); menupopup.insertBefore(menuitem, refChild.nextSibling); } menuitem.setAttribute("disabled", canPaste.toString()); }, false); })();
Ctrl+F押したらFindbarが出るけどもう一回押したら消える用に出来ない?
// and search searchbar.handleSearchCommand(aEvent); じゃないと駄目だった
つEsc
>>290 (function() {
document.getElementById("find-field").addEventListener("keypress", function(aEvent) {
if (aEvent.ctrlKey && aEvent.charCode == 102) {
gFindBar.closeFindBar();
aEvent.preventDefault();
}
}, false);
})();
>>288 実はそれ入ってた。
よくよく考えたらこれ入ってたら検索バーにPaste and Goいらないのかorz
>>289 >>291 書き換えてみたら出て来ました。
ありがとう。
>>293 なんか動作しないんだが。
Firefox2.0でしか動かないとか?
>>295 その通りです。
Findbar周りは,XULエレメントのプロパティやメソッドが,Fxのバージョンにより
大きく変わっているの。
1.5系ならgFindBar.closeFindBar();をcloseFindBar();にすればいいかも 3.0系はワカラン
Fx2: if(findBar.hidden) gFindBar.onFindCmd(); else gFindBar.closeFindBar(); Fx3: if(findBar.hidden) findBar.onFindCommand(); else findBar.close(); Fx1.X は使ってないから分からん。
300 :
298 :2007/05/06(日) 00:26:42 ID:XIHV+Bw40
Fx1.x は if((document.getElementById('FindToolbar')).hidden) onFindCmd(); else closeFindBar(); かな?
(function() { if((document.getElementById('FindToolbar')).hidden) onFindCmd(); else closeFindBar(); })(); こういうこと?↑だとダメだった。
>>301 ゴメン昔書いた拡張からそのままコピペで紛らわしい事書いた
>>297 が書いてる通り
(function() {
document.getElementById("find-field").addEventListener("keypress", function(aEvent) {
if (aEvent.ctrlKey && aEvent.charCode == 102) {
closeFindBar();
aEvent.preventDefault();
}
}, false);
})();
でOKでは?の意味(1.5系使ってないので未確認)
手抜きだけど Fx1.5〜3.0a5pre までOKだと思う(.uc.xul)
<overlay id='_key-overlay' xmlns='
http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul '>
<script type="application/x-javascript"><![CDATA[
var _key={
toggleFindbar: function() {
var findBar = document.getElementById('FindToolbar');
var tmp = navigator.userAgent.match(/rv:([\.\d]+)/);
var ver = (RegExp.$1).substring(0, 5);
if ( ver == "1.9" ) { //Fx 3
if(findBar.hidden) findBar.onFindCommand(); else findBar.close();
} else {
var sel = document.commandDispatcher.focusedWindow.getSelection().toString();
if(sel) document.getElementById("find-field").value = sel;
if ( ver == "1.8.0" ) { // Fx 1.x
if(findBar.hidden) onFindCmd(); else closeFindBar();
} else { // Fx 2.x
if(findBar.hidden) gFindBar.onFindCmd(); else gFindBar.closeFindBar();
}
}
}
}
]]></script>
<window id="main-window">
<keyset id="mainKeyset"> <key id="key_find" oncommand="_key.toggleFindbar();" /> </keyset>
<commandset id="mainCommandSet"> <command id="cmd_find" oncommand="_key.toggleFindbar();" /> </commandset>
</window>
</overlay>
Findbar BasicsやFind Toolbar Tweaksにある Findbarの履歴のクリア機能が欲しいのです・・・・
グリスモンキがuserchromeやuserxulを扱えるように鳴る予定無いの? その逆でもいいけど。再起動なしでできるようにしてほしい。
別に再起動せんでも新しいウィンドウ開けばそっちで有効になる
新しいウィンドウていわれてもタブブラウジングしてるしそれ再起動と同じやん。 タブにFirefoxもうひとう開けってか?
thunderbirdで「右クリックで選択範囲内をGoogle検索」みたいなuserChrome.jsのスクリプトご存じないですか? Conqueryが更新止まってるみたいで不便なんす。
>>307 グリモンの有効/無効なら新しいタブや
リロード(F5)で切り替えられたと思う…。
>>309 Firefox対象外のGMではあたりまえだろ。
>>308 マダ見てたら一応 Tb2.0forWinで動いた。
(function() {
const Prgpath = "C:\\Program Files\\Mozilla Firefox\\firefox.exe"
window.SelectionSearch = function() {
var win = document.commandDispatcher.focusedWindow;
var sel = win.getSelection().toString();
if ( !sel ) return;
sel = sel.split("\n");
var param = encodeURI(sel);
param = "
http://www.google.co.jp/search?q= " + param + "&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox";
var file = Components.classes['@mozilla.org/file/local;1'].getService(Components.interfaces.nsILocalFile);
var process = Components.classes['@mozilla.org/process/util;1'].getService(Components.interfaces.nsIProcess);
file.initWithPath(Prgpath);
process.init(file);
var arr=new Array();
arr[0]=param;
var out = {};
process.run(false,arr,arr.length,out);
};
var newItem = document.createElement("menuitem");
newItem.setAttribute("label", "Search by Google");
newItem.setAttribute("id", "SearchSelection_menu");
newItem.setAttribute("oncommand", "SelectionSearch();");
document.getElementById("messagePaneContext").appendChild(newItem);
document.getElementById("messagePaneContext").addEventListener("popupshowing", function() {
document.getElementById("SearchSelection_menu").hidden = !gContextMenu.isTextSelected;
}, false);
})();
312 :
308 :2007/05/09(水) 18:14:37 ID:pYP7fJ9n0
>>311 おおおまさにこれが欲しかった!ありがとう!
専ブラからコピペしたらエラーが出て動かなかったので、
ブラウザからコピペしたら動きました。
313 :
311 :2007/05/10(木) 00:07:49 ID:1nGLiReq0
>>312 仕事帰りの
>>311 です。
Tb のスクリプトを書くのは初めてなのでカナリ手抜き(不勉強)なブツですが役に立てて良かったです。
モウチョット勉強しなくちゃナ....自分
グーグルマップには マップの左側の表示切替をする三角矢印がありますが マップの上部の表示切替をする三角矢印を挿入する greasemonkeyスクリプトはありませんか userscripts.orgで検索したり ("google map"|"google maps"|"google マップ") greasemonkey ("google map"|"google maps"|"google マップ") greasemonkey ("toggle"|"トグル") などで検索してみたのですが見当たらなくて
今Firefox更新情報 Wiki*にあがってた Clear Fields っていう拡張入れたのですが これと全く同じ働きしてくれる物って無いですかね?
>>315 ボタンを追加するものでなくて,右クリックにクリアを追加するものが
まとめサイトに挙がってた。
ucjs_clearfield.uc.js コンテキストメニューにフィールドのクリアを追加する
検索バーのみで良ければSecond Searchがあるけど用途が違うかな
if (履歴を戻るボタンが押された) 〜 という判定はどうしたらできますか?
>>316 微妙に違う感じですね・・
でも、ありがとうございました。参考にさせていただきます
>>317 ありがとうございます。
ちょっと違うっぽいですね。でも便利ですね
>>318 var Button = document.getElementById("back-button");
で、後は
Button.setAttribute("oncommand", "hogehoge();"); とか
Button.setAttribute("context", id); とか
Button.addEventListener("click", function(event) {if( event.button==0 ) hoge;}, false);
とか色々、何がしたいのか分からないから答えも適当になる。
>322 使えないづら。諦めろ
>321 だた
「右ダブルクリックでリンクを新しいタブで開く」ということは出来ないでしょうか? 「右ダブルクリックでタブを閉じる」は検索すると出てきたのですが・・・ もし出来るのであれば教えてください。よろしくお願いします。
こんな感じ? gBrowser.mPanelContainer.addEventListener("dblclick", function(aEvent) { if (aEvent.button == 2) { var target = aEvent.target; while (target) { if ((target instanceof HTMLAnchorElement || target instanceof HTMLAreaElement) && target.hasAttribute("href")) { aEvent.preventDefault(); aEvent.stopPropagation(); document.getElementById("contentAreaContextMenu").hidePopup(); var docURL = target.ownerDocument.location.href; urlSecurityCheck(target.href, docURL, Ci.nsIScriptSecurityManager.DISALLOW_SCRIPT); gBrowser.loadOneTab(target.href, docURL ? makeURI(docURL) : null, null, null, false, false); return; } target = target.parentNode; } } }, true);
>>326 おお!想像してたとおりの挙動です
これで心置きなくfirefoxに乗り換えられます
本当にありがとうございました
同じURLが既に開かれていたらタブを開く代わりにそのタブに移動する っていうスクリプトどこかで見た気がするのですが、お持ちの方いますか?
>329 まさしくそれっぽいですが、userChrome.js で使う場合にはどう 移植すればよいのでしょう・・・
Fx2.0.0.3において, サイドバーブックマークtreechildrenのデフォルトのtooltip の表示を抑制するにはどのようにコードを書けばいいのか ご教示いただきたくお願いいたします。
SearchLoad Optionsという拡張の 「別の検索エンジンを選択して検索した場合に 元の検索エンジンを選択した状態へ戻す」スクリプトってあるでしょうか。 もしなかったらuserchrome.jsで実現するヒントをどなたか教えて下さいm(_ _)m
(function() { var searchbar = BrowserSearch.getSearchBar(); if (searchbar) { searchbar.handleSearchCommand_original = searchbar.handleSearchCommand; searchbar.handleSearchCommand = function(aEvent) { this.handleSearchCommand_original(aEvent); setTimeout(function() { var ss = Cc['@mozilla.org/browser/search-service;1'].getService(Ci.nsIBrowserSearchService); ss.currentEngine = ss.defaultEngine; }, 0); }; } })(); 検索した後にbrowser.search.defaultenginenameの検索エンジンに戻す
>>333 お礼遅れてしまいスイマセン。
理想通りの動作です。ありがとうございます。
大事に使わせていただきます。
>>334 SearchLoad Options の設定 の Searchbar タブ にある Reset search engine にチェック入れて
デフォールトの検索エンジンを選択して何秒後に元に戻すかを設定できるけど
それじゃダメなのかな?
>>333 と同等の動作をすると思うんだけど、、、
>>335 レスありがとうです。
設定画面とかあまり必要じゃなくて簡素なもので十分なので・・・。
だから333氏のスクリプトで非常に満足してます。
337 :
名無しさん@お腹いっぱい。 :2007/05/22(火) 09:06:01 ID:u8+dFTFS0
>>337 AutoPagerizeかPagerization使えば。
>>338 AutoPagerize使ってみます。
ありがとう。
341 :
名無しさん@お腹いっぱい。 :2007/05/22(火) 12:51:21 ID:iA0egHHe0
>>341 確かに速かったけど、2ページ目までしか表示されないのね。
続けて表示されてくれたらよかったけど・・・。
教えてくれてありがとう。
>338 そんなんあるのか、と思ったらトランクではうごかんのね
オートページャよか巻き戻し早送りの法が全然使いや少ないか?
platypusを使ったら他の既存のスクリプトが壊れて 再インストールしてもエラーがでるようになりました。 壊れたスクリプトをアンインストールしたいのですが どうすればいいでしょう? ユーザースクリプトの管理からはいじれません・・・
なんだか知らねえが、俺も昨日グリースモンキーがぶっ壊れて いったんgm_scriptsフォルダから削除して再度インストールしようとしたけど インストールすら出来なくなった GMが反応しなかった。 しょうがなく、バックアップしてたFxのプロファイルに丸ごと入れ替えてで復旧させた
>>346 gm_scriptsフォルダのスクリプトを削除してから
入れなおして復旧できました
ありがとうございます。
>>344 どっちも使ってるけどgreasemonkeyのやつは一番下にいった瞬間から検索結果が追記されていく感じだから
ページが切り替わらない分スピーディだと思うし戻るのも同じページをスクロールするだけだから早い
巻き戻し早送りは,ブラウザの戻る/進むを実行するたびDOMツリーを走査するので,この動作が極端に遅くなる。 一方,類似拡張機能のlink_widgetsは,ナビゲートする時にのみDOMツリーを走査するので,ブラウザの戻る/進むに影響しない。
俺もGreasemonkey 0.6.9にアップデートしたら、スクリプトのインストールができなくなったが、 0.6.8.20070314.0に戻したら、インストールできるようになった。
誰か「名前をつけてリンク先を保存」をミドルクリックでダイアログなしに保存できる userChrome.js のスクリプト知らない? どっかにあったきがするんだけど見つからなくって。
それってリンク先を新規タブで開けなくなるんじゃ… 好みにもよるが、Drag de Go の方が便利だと思う。
>>353 リンクを直接ミドルクリックするのではなく、
リンクを右クリック>コンテキストメニューの「〜を保存」をミドルクリックって事でしょ。
alt+クリックでいいじゃん
>>354 >>356 OK 、勘違いスマン。
でもそれならなおさら Drag de GO の方がいいんじゃないかと思った。
スレの趣旨には反するけど。
まあこんな感じで document.getElementById('context-savelink').addEventListener('click', function(aEvent) { if (aEvent.button == 1) { urlSecurityCheck(gContextMenu.linkURL, gContextMenu.docURL); saveURL(gContextMenu.linkURL, gContextMenu.linkText(), null, true, true, makeURI(gContextMenu.docURL, gContextMenu.target.ownerDocument.characterSet)); closeMenus(aEvent.target); } }, false);
>>332 さんではないのですが
>>333 さんのスクリプトを便利に使わせて頂いてます。
Scroll Search Engines.uc.jsでコンテキストメニューから検索エンジンを変更した場合にも
browser.search.defaultenginenameの検索エンジンに戻せたら嬉しいのですが可能でしょうか?
どぞ (function() { var searchbar = document.getElementById("searchbar"); if (searchbar) { searchbar.handleSearchCommand_original_ucjs = searchbar.handleSearchCommand; searchbar.handleSearchCommand = function(aEvent) { this.handleSearchCommand_original_ucjs(aEvent); setTimeout(function() { var ss = Cc['@mozilla.org/browser/search-service;1'].getService(Ci.nsIBrowserSearchService); ss.currentEngine = ss.defaultEngine; }, 0); }; BrowserSearch.loadSearch_original_ucjs = BrowserSearch.loadSearch; BrowserSearch.loadSearch = function(searchText, useNewTab) { BrowserSearch.loadSearch_original_ucjs(searchText, useNewTab); setTimeout(function() { var ss = Cc['@mozilla.org/browser/search-service;1'].getService(Ci.nsIBrowserSearchService); ss.currentEngine = ss.defaultEngine; }, 0); }; } })();
>>360 ありがとうございます。
ですが残念ながら検索エンジンが元に戻りませんでした。
検索バーのエンジン方も戻らなくなってしまったので現在
>>333 の方に戻しています。
自環境のせい?
折角書いて下さったのにすみません。
>>361 エラーコンソールに何かエラーメッセージ出てません?
363 :
352 :2007/05/24(木) 05:54:09 ID:6dhmerVU0
>>358 うわー
わざわざ書いていただいちゃってすみません。
ありがとうございました!ばっちり動いてます。
364 :
359 :2007/05/24(木) 05:56:45 ID:8Ysk1tGV0
あ、あれ?今もう一度入れ直してみたらちゃんと検索エンジンが戻るようになりました! コンテキストメニューの場合もデフォルトエンジンに戻りました。 先程から変えたことといったらNoScriptを古いバージョンに戻したくらい…。 でなかったらまさか保存時に文字コード間違えたとかorz とにかくありがとうございました! そしてお騒がせしてすみませんでした。
>>358 さんのダイアログ無しでリンク先を保存できるスクリプトを入れようとおもうのですが、
ミドルクリックじゃなくて左クリックで保存をするにはどうすればいいんでしょうか?
出来るのであればスクリプトを教えてください、よろしくお願いします。
>>365 これで
nsContextMenu.prototype.saveLink = function () {
urlSecurityCheck(this.linkURL, this.docURL);
saveURL(this.linkURL, this.linkText(), null, true, true, makeURI(this.docURL, this.target.ownerDocument.characterSet));
}
>>366 ありがとうございます。
ですが、aEvent.button == 0をaEvent.button == 1に書き換えてもダイアログが表示されました。
何度か再起動したのですが、駄目でした・・。
>>367 動作しました!ありがとうございました!
これでウザイダイアログを見ずにすみます。
スレの更新チェックしてみたら便利なスクリプトが一杯だ〜(;゚∀゚)=3 感謝感謝でつ。
こんなスレがあったのか・・・!?
>>360 とか、同じような動作するためのを、
いろんなサイト調べたり、SearchLoad Optionsの中のぞいたりして、
必死に自分で作ってたよ(´Д`;)
てか、そうだよね?
userChrome.jsって、自分で調べて自分のために自分でスクリプト作って、
Firefoxを便利にする物だよね?
そうだと言ってくれ・・・_| ̄|○
便乗して色々頂きました。 作者さん、ありがとう。
>>333 これを現在のタブではなく、
新規タブで開くようにするにはどうしたらいいのでしょうか
>>372 browser.search.openintab を true に。
>>373 ありがとうございます。
Tab Mix Plus の設定が効かなくなってしまったので助かりました。
YouTubeやニコニコ動画のURLをTubePlayerで開くスクリプトはありますでしょうか? 色々と探していますが見つかりません;
><
リンクもしくは選択文字列もしくは現在のURLをTubePlayerで開く
二行目をTubePlayerのインスコパスにあわせて設定してね☆
(function() {
var playerPath = 'C:\\Program Files\\TubePlayer\\TubePlayer.exe'
var cacm = document.getElementById('contentAreaContextMenu');
var mitem = cacm.insertBefore(document.createElement('menuitem'), cacm.firstChild);
mitem.setAttribute('label', 'TubePlayer\u3067\u958b\u304f');
mitem.setAttribute('accesskey', 'z');
mitem.setAttribute('oncommand', 'gContextMenu.openTubePlayer();');
var re = /youtube\.com|nicovideo\.jp/;
cacm.addEventListener('popupshowing', function() {
mitem.hidden = !re.test(gContextMenu.onLink ? gContextMenu.linkURL : gContextMenu.isContentSelected ? getBrowserSelection() : gContextMenu.docURL);
}, false);
nsContextMenu.prototype.openTubePlayer = function() {
var lf = Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);
lf.initWithPath(playerPath);
var proc = Components.classes["@mozilla.org/process/util;1"].getService(Components.interfaces.nsIProcess);
proc.init(lf);
var url = this.onLink ? this.linkURL : this.isContentSelected ? '
http:// ' + getBrowserSelection().replace(/^h?
ttp:\/\//, '') : this.docURL;
proc.run(false, [url], 1);
};
})();
378 :
375 :2007/05/26(土) 12:18:37 ID:ygfZtxtO0
>>377 ありがとうございます。
上手く動作しました。
拡張outsidebarと同じ動作をしてくれるスクリプトってないのでしょうか? 具体的に言うと、wikiからの引用ですが >Webページを表示するスペースを縮小させてサイドバーを開きますが、 この拡張機能を用いるとサイドバーの横幅分だけウインドウサイズを変更させて サイドバーを開閉します。 どなたかお願いします。
>>379 拡張をインストールすればいいのではないですか。
xpiの中のものを99.9%変更しなくてもuserChrome.jsとして使える。
元々シンプルなので, スクリプトを作る意味ないし,本当は何をしたいのかな?
>>380 拡張が多くなってきたので、
これぐらいの機能ならスクリプトでやった方が軽くなるのかなと思ったもので・・・
素人の考えですいません
おとなしく拡張入れておきます
拡張の中身もスクリプトだからなー、置き場所変えても別に軽くなったりはしないよねー
AIOGestureはuserChrome.js版のに入れ替えたら軽くなったけどねー 場合によるんじゃないかなー
Greasemonkeyはもう使ってない
>>257 を使ってる
オミトロンでやるかCSSでやるかGMでやるか拡張でやるか
オロナミン?アリナミン?
userChrome.jsの公式フォーラム↓にあるDrag'n'go.uc.jsを使ってます。
http://forums.mozillazine.org/viewtopic.php?t=397735 これの動作を変更したいけれど、スクリプトは全くわからないので
どこをどういじればいいのか見当もつかないorz
具体的に言うと、「URLや選択文字列を下にドラッグしたときにバックグラウンドの新規タブで開く」、
ようにしたいのです。なんとなくスクリプトの62行目が怪しいと思っていじってみても何も変わらず・・。
誰か助言お願いします。
2chのリダイレクトを外すスクリプトが突然利かなくなりました。 No Redirect 2chも2ch URL Modify 0.2ともに駄目。 Mac版Firefox 2.0.0.3なんですが、ここ1〜2回のアップデートで 動かなくなったモヨン…… どなたかお知恵を拝借できますでしょうか。 よろしくお願いします。
>>390 自己解決……テーマのせいでした。
まずレスを頂いて試したところ、Bookmarkletも利きませんでした。
プロファイルマネージャーでシンプルユーザーに切り替えるとスクリプトが有効になるので
最初はアドオンやgreasemonkeyを疑ったんですが、全部切っても駄目。
最近2chをブラウザで見るとbbs2chは無効なのにポップアップが出るようになったことに着目。
普段専ブラで見ていたので、ブラウザだとcgiモードとjava scriptモードがあることを知り、
掲示板トップからcgiモードに切り替えてみたものの、jsモードのまま。
シンプルユーザーがデフォルトテーマだったことに気付き、
一度デフォルトテーマに戻してから他のテーマに切り替えるとやっと直りました。
ただしその手順を踏まないと直りません。
また特定のテーマが原因というわけではなさそうです。
レスのお陰でBookmarkletまで利かない=js周りの問題と気付くことが出来ました。
Mac版、Firefox、自分の環境いずれが原因か特定はできていませんが、
とりあえず解決をご報告します。
補足というか、端的に。 >ブラウザのcgiモードとjava scriptモード モードを変更すると2chがクッキー(READJS)食わせてくれるのですが、 これがoff=cgiモードになっているのにテーマによっては無視される、ということです。 なんだかしつこくなってスミマセンでした。
>>388 62行目の if (getBoolPref("browser.tabs.loadInBackground") != !(aEvent && aEvent.shiftKey)) を
if (aEvent && aEvent.shiftKey) にすればいいんじゃ
>>393 レスどうもです。
確かにそれでバックグラウンドで開くのですが、
常にではなく「下にドラッグしたとき」だけバックグラウンドにしたいのです。
でもそうなるとコードをかなり書き換えないといけないのかな・・。
>>394 80行目あたりで
contentAreaDNDObserver.onDragStart = function(aEvent, aXferData, aDragAction) {
this.ucjs_dng_startY = aEvent.screenY;//←追加
var target = aEvent.originalTarget;
とかやって
62行目を
if ((this.ucjs_dng_startY < aEvent.screenY) != !(aEvent && aEvent.shiftKey))
にするとか
>>395 おお、うまくいきました。ありがとうございますペコリm(_ _)m
大事に使わせていただきます!
サイドバーやツールバーにあるブックマークのクリック時のアクションを ※「javascript:」(ブックマークレット)以外の時 ・クリックで新しいタブ ・SHIFT+クリックで現在のタブ ・CTRL+クリックで新しいウィンドウ ※「javascript:」(ブックマークレット)の時 ・クリックで現在のタブ ・SHIFT+クリックでも現在のタブ ・CTRL+クリックでも現在のタブ ~という風に変更するにはどうすればいいですか?
>>398 chromeフォルダの直下にcontextmenu,toolmenuフォルダがあること
userMenu.pl.jsおよびjsa.jslもchromeフォルダの直下にあること
以上の位置は固定です。
唯一userMenu.uc.jsは, 拡張機能userChrome.jsが読み込むところにあるればよい
>>398 chromeの下、SubScriptという名前のフォルダに入れたのなら、userMenu.uc.jsの
const CHROMEDIRECTORY = DIRECTORY_SERVICEなんちゃらの行の次に
CHROMEDIRECTORY.append("SubScript");
を追加してみて。
そこの使い分けローダーやuserMenu.jsは使ってないけど、userContent.uc.jsで
そうやってサブフォルダに入れて使ってます。
>>399-400 トン!
おかげさまで出来たよ。これでやっとJSActionsを削除できる(;゚∀゚)=3
userMenu.jsなんですけど,スクリプトを追加/削除/名称変更した時に,メニューを再構成するコマンドないかしら。 現状では,新しいウインドウを作らないと,メニューに反映されないみたいなんです。 実行速度に影響しないように,リアルタイムでなくて,オンデマンドでメニューを再構成するのが望ましいです。
403 :
80 :2007/06/01(金) 17:31:07 ID:ui7f58rJ0
キタ━━━━━━m9( ゚∀゚)━━━━━━!!
>>403 ありがとうございます。早速訪問してあとでじっくり勉強させて頂きます。
これでちと悩んだのはDOMインスペクタで見るとこれに関する
コマンドセットがありますよね?
あそこをいじれば全てうまくいきそうな気配がしたんですが
コマンドセットとかコマンドディスパッチャがどうなってるのか
さっぱり判らないんでいじり様がなくて試せなかったんですよ…。
407 :
名無しさん@お腹いっぱい。 :2007/06/02(土) 13:08:42 ID:wibIukES0
2.0.0.4にしたら軽量マウスジェスチャーのUndoCloseTabが効かなくなったんだけどどうよ? TBP入れてそれ用に切り替えると効くんだが、、、
>>407 普通に効いてるが?
まずは自分の環境疑えよ
document.getElementById("History:UndoCloseTab").doCommand(); これのことだったら普通に効くが
>>406 ありがたく頂きますた。
あとTMPにあった「他サイトへのリンクを新しいタブで開く」機能も作ってくれたらいいなぁ。
なんてね・・。
と思ったけど事故解決した。 Firefoxのオプションで設定できたのね・・。
>>409 そう
nsSessionStore.jsでエラー吐いてるな
ちょっと弄ってみます
>>412 いっぺん履歴とかキャッシュを消去してみたら?
userMenu.uc.jsとMenuEditorって競合しないみたいなんだけどそういうもん? だとしたらすげー嬉しいんだけど。
415 :
410 :2007/06/02(土) 21:00:23 ID:fqYIeNBF0
あれ?やっぱりうまくいかない。 「他サイトへのリンク」を強制的に新規タブで開く機能は捨てられないのでTMPに戻ろうかな。
416 :
名無しさん@お腹いっぱい。 :2007/06/02(土) 22:11:58 ID:jZOS7IRh0
417 :
416 :2007/06/02(土) 22:19:57 ID:jZOS7IRh0
418 :
416 :2007/06/02(土) 23:15:00 ID:jZOS7IRh0
419 :
80 :2007/06/04(月) 15:40:27 ID:Xbr35qi20
userContent.js userMenu.js 共に新しいの上げました.パスは magai で.
更新内容は,ホストに関するホストオブジェクトを追加した事.
要望のあったメニューの再構築もできるようになりました.
詳しくは同封のscripting.txtにて.
userContent.js ver. 0.6
http://s-io.net/up/1/_/jump/1180938858878397.pbHCVa userMenu.js ver. 0.5
http://s-io.net/up/1/_/jump/1180938903028985.yxXoM3 >>402 スクリプトからメニューの再構築ができるようになりました.
スクリプト内で「userMenu.rebuild();」とすれば可能です.
一応サンプル(toolmenu/Rebuild User Menu.js)も入れておきました.
>>414 MenuEditorの動作内容を知らないのではっきりした事は言えませんが,
拡張によって追加されたメニューも操作できるので,競合するとは考えにくいです.
>>405 私もコマンドセットのいじり方を知りません.
それに,あくまでマウスクリックに対する動作を変更したいのですから,
マウスクリック部分の動作を書き換えた方が単純で良いと思います.
サイドバー内のブックマークであれば,
bookmarks-viewのonclickかopenItemClickを書き換えるのが簡単かと.
AutoPagerizeの便利さは異常だろ…常考
MR Tech Link Wrapperのuc.js版を探してるのですが見つかりません。 教えていただけませんでしょうか?
>>419 userMenu/userContent共有り難く使わさせていただいております。
スクリプトにエラーがある場合,現状では完全に無視するようになって
いますが, ロード時にエラーを出力するようにしていただけると,
問題の切り分けが容易になると思います。
次回更新時に反映していただけることを期待いたします。
>>421 // URL_Breaker2.uc.js: for Firefox 2.0.* - 3.0,* by otokiti 07/02/19
window.addEventListener('DOMContentLoaded', function(evt) {
var tabs = gBrowser.tabContainer;
for(var i=0; i<tabs.childNodes.length; i++){
var tab = tabs.childNodes[i];
var doc = gBrowser.getBrowserForTab(tab).contentDocument;
var html = doc.getElementsByTagName("html")[0];
if(!html.hasAttribute("__url_breaker_done")){
html.setAttribute("__url_breaker_done", "1");
if (doc.contentType == 'text/html') {
var s1,s2,pNode,cNode,nNode,j;
const threshold = new RegExp(/[\x21-\xff]{50}/); const wrapChr = new RegExp(/([\/\?\)\]}\-・」!・、,.:=>・。;_])|([&%#$~'"・「\({\[])/g);
const dmyChr = new RegExp(/<dummyWBR><dummyWBR>/g); const avoidElm = new RegExp(/TITLE|STYLE|FORM|SCRIPT|INPUT|TEXTAREA|PRE|OPTION|XMP/);
try{ var walker = doc.createTreeWalker(doc.body, NodeFilter.SHOW_TEXT, null, true);
while (cNode = walker.nextNode()){
s1 = cNode.nodeValue; pNode = cNode.parentNode;
if (pNode.nodeName.match(avoidElm) || !s1.match(threshold))
continue;
s1 = s1.replace(wrapChr, '$1<dummyWBR>$2').replace(dmyChr, '<dummyWBR>');
s2 = s1.split('<dummyWBR>');
cNode.nodeValue = s2.pop();
for (j=0; j<s2.length; j++){
nNode = doc.createTextNode(s2[j]); pNode.insertBefore(nNode, cNode);
nNode = doc.createElement('WBR'); pNode.insertBefore(nNode, cNode);
} } }catch(e){}
} } } }, true);
424 :
423 :2007/06/04(月) 23:26:31 ID:AbalSG7v0
>>419 (80) 氏の userContent.ucjs の wbr.js を使うのもてかと思う。
425 :
414 :2007/06/04(月) 23:34:59 ID:MEDXq7i70
>>419 作者さん自らレスありがとうございます。
userMenu.jsが出るまではコンテキストメニュー関連のuc.jsがMenuEditorと競合してたのですが、
userMenu.jsは競合しないと判明し非常〜にうれしいです。
addEventListener("command" とかやってるやつはMenuEditorが入ってると効かない setAttribute("oncommand" なら問題なし
427 :
421 :2007/06/05(火) 20:27:03 ID:+0GxB14r0
>>423 遅くなりましたが、ありがとうございました。
428 :
80 :2007/06/05(火) 20:58:19 ID:QaydMDwT0
>>422 例外をcatchしてdumpするぐらいなら対応したいと思います.
>>423 「DOMContentLoaded」なんてイベントを初めて知りました.
今まで「load」イベントに不満を持っていたので,思いがけず改善できて感謝感激です.
429 :
422 :2007/06/05(火) 21:05:08 ID:paX6cvh80
>>428 >例外をcatchしてdumpするぐらいなら対応したいと思います.
必要十分です。 よろしくお願いいたします。
昨日、FirefoxPortable(2.0.0.3)を入れて
URLごとにほかのソフトにURL渡したいなぁと検索していて
このスレにたどり着きました
>>377 を試してみようとおもい
>>1 のgreasemonkeyとuserCrome.js拡張をいれ
userCrome.jsファイルの中身をSub-Script/XUL Loaderのにおきかえ
同じところにTubePlayer.uc.jsファイルを作成し377を書き込む
(パスも置き換え\を\\にする)
ということをしたのですが 動いてくれません
TubePlayerが起動しないのです
何かしら原因がわかる方いましたら、助言よろしくおねがいします。
>>430 URLクリックで起動するんじゃなくて
右クリックメニューに「TubePlayerで開く」が追加。
>>430 >動いてくれません
1.
>>431 の言うように使い方が違っている
2.ツール> エラーコンソールにエラー出ていないか?
user.jsに下記のデバッグ設定を追記して再度エラー確認。
user_pref("browser.dom.window.dump.enabled", true);
user_pref("javascript.options.showInConsole", true);
user_pref("javascript.options.strict", true);
user_pref("nglayout.debug.disable_xul_fastload", true);
user_pref("nglayout.debug.disable_xul_cache", true);
3.Windows環境なら,エクスプローラーの設定で"拡張子を表示しない" になっていないか?
そうだとすると,*.uc.js.txt になっている可能性がある。
4.Sub-Script/XUL Loader, *.uc.js共にUTF-8 BOM無しで保存しているか?
5.動かないのはこのスクリプトだけなのか?
>>431 ありがとうございます
右クリックの拡張だったのですね(^^;
うまくいきました
>>432 まったくこの手のはいじるの初めてだったので
気がつかなかったです
左クリックからURLごとに送り先かえる〜ってのは
できないのでしょうか?
ほかの拡張探すべき?なのかな?
>>434 ありがとうございます
ちょっといまいじれないので後でいじって見ますね♪
>433
http://vamp.s9.xrea.com/のJane UpLoader Doeの2ページ目に小物アプレット色々(2730.zip)ってのがある
これと拡張のDownloadwithとかその辺を組み合わせれば(この場合はダウンロードするようになっているものなら)左クリックからでも何とかなるかも
それかA要素を左クリックすると,hrefの中身を引数にして上記のスクリプトを呼び出すスクリプトを書くとかかなぁ
SCRAPBLOG : [userChrome.js] Scroll Search Engines
ttp://www.xuldev.org/blog/?p=71 使ってる人いますか?
これ、Menu Editorと併用できなくないですか?
Menu Editorを無効にすると使えるんですが
さすがに手書きcssでメニュー弄るのも限界があり
泣く泣く拡張機能のほうのScroll Search Enginesを使っています(こっちは併用可
併用出来てる方なにか書き換え箇所とかあったら教えてください。
拡張機能のほうのScroll Seach Enginesを解凍して scrollsearchengines.jsをscrollsearchengines.uc.jsとかにして使えばいいんですよ
>>439 ありがとうございます。
なるほどーと思って
extentions>
[email protected] >chrome>content>scrollsearchengines.js
をscrollsearchengines.uc.jsにしてやってみましたがだめでした…
Fx2.0.0.4 userChrome.js0.8です。
最後の行の window.addEventListener("load", ScrollSearchEngines.onLoad, false); を ScrollSearchEngines.onLoad(); にすればいいかも
Greased Lightbox使ってるんですが、ロダによっては貼られてる画像をクリックしても 「画像が存在しない」みたいな風に出て来て困ってます(タブで開けばちゃんと表示されるので、直リンは可能なはず)。 これって対処する方法とかありますか? それとも、単にロダの仕様の問題?
どのロダだよ
Greased Lightbox、itmediaの画像に対応して欲しい
どいつもこいつもオロナミンとかアリナミンとかうるせーよ。 だったら最初からブラウザにフィルタ機能つけとけつーの。
大学のイントラネットに自宅から接続するために、そのページを 開くときだけ串経由で接続したいんですが、どういったコードを書いたら いいんでしょうか?
URLを判定してプロクシの設定を変更するコード書けばいい
>>452 すいませんコード関係はよく分らないもので・・・・。
できればお願いできますか?
> どういったコードを書いたらいいんでしょうか? + > すいませんコード関係はよく分らないもので・・・・。 > できればお願いできますか? = 完成品を貼ってよね 最初から答えだけでいいの ヒントとかいらないから
>>454 pacファイルでだめなのかな?
例えば,以下の様に記述したテキストファイルを作成保存して, ツール>オプション>詳細>ネットワーク>接続設定>一番下を選択して>file:///C:/WINDOWS/proxycfg.pac(先ほど作成したファイルのパスにする)などと記入
例}urlのところとPROXYのとこは適当なので,自分の望む様に変える必要はある。
function FindProxyForURL(url, host){
if( shExpMatch(url, "
http://*bar.com*/ " )
|| shExpMatch(url, "
http://hoge.fuga.net* " ) ){
return "PROXY 172.24.1.1:8080";
}else if( shExpMatch(url, "
http://*boo.com*/ " )
|| shExpMatch(url, "
http://hoge.hoge.net* " ) ){
return "PROXY proxy.server.jp:8080";
}else{
return "DIRECT";
}
}
>>455 ありがとうございます。
まさにこれを求めていたんです。
ニコニコ動画をDLするスクリプトってのがあるんですが。 URLの一部をwatchからwatch_naishoへ変更すると動作しなくなるのですが。 対処方法が解る方いましたらお願いします。
watchを参照するようにすればいい
>>458 よろしければ、もう少しヒントいただけませんか?
ヒントも何も答えなんだけど
>>457 /http.*?watch\/(.*)$/g
を
/http.*?watch_naisho\/(.*)$/g
に変更すればおk
>>461 有難うございます。正常に動作するようになりました。
それはFirefoxの拡張を指して「これってFirefoxと似たようなもの?」と言ってる様なものだが・・・
拡張と本体が逆だったわ
>>464 よく分からんが…
>>463 で言いたかったのはuserContent.uc.jsみたいに
GreasemonkeyのスクリプトをuserChrome.js使えるようにしたのかと思ったという話
chrome フォルダの userscripts フォルダにある Greasemonkey スクリプトを読み込んでWebページに適用するらしい GM_* みたいな関数が使えない代わりにすげー速いよって言ってる
// ==UserScript==間を読んでくれて
ファイル名を書き換えなくてもいいのなら
>>80 さんのよりこっちのほうが便利かも
まだ試してないけど
スクリプトの導入は,そのときだけ, スクリプトの実行はページのload毎, 私なら実行速度を優先してuserContent.uc.jsに一票を投じる。
リンクのアドレスに含まれている特定の文字列を別の文字列に置き換えてくれるスクリプトってありませんか? 画像掲示板などで、「〜〜.jpg.htm」となっているときに「〜〜.jpg」に変更出来ると、 Greased Lightboxで開けるので助かるのですが…
WEBページの改竄は著作権違反。通報しますたっ!
about:config眺めてたらbrowser.tabs.selectOwnerOnCloseてのがあったんだけど、 これはバックグラウンドでタブを開いた時には機能しないらしい。 で、タブを閉じた時にそのタブを開いた元のタブにフォーカスを移す スクリプトをuserChrome.jsで出来ないものかと思ったわけですが。 どなたかえろい人作って頂けないでしょうか。 まあTMPでも使えば出来るんだろうけど…
>>470 (function(){
var a=document.getElementsByTagName('A');
for(var i=0;i<a.length;i++)a[i].href=a[i].href.replace(/\.jpg\.html$/,".jpg");
})();
searchDefsにこんな感じのを加えたほうがいいと思うけど
// show2
{
name : 'show2',
includeRegExp : /./,
linkRegExp : /(.*?)\.(jp(e?)g|gif|png)\.html?$/i,
replaceString : '$1.$2',
showFunction : function(event) { greasedLightbox.showFrom(event, 'show2'); return false; }
},
たびたびすみません リダイレクトで飛ばされているようで、うまく表示出来ませんでした 和連という掲示板なのですが、 〜waren/redirect/waren○○.jpg.htm から 〜waren/files/waren○○.jpg に飛ぶようです 掲示板から直接Greased Lightboxで画像を開くにはどうすればよいでしょうか
正規表現を書き換えればおk
もうここまで着たらグリースモンキをクローム対応に書き替えてください。 お願いします。
(function() {
function xxxYyyZzz(event) {
doc = event.originalTarget;
if (doc instanceof HTMLDocument) {
if (doc.documentURI.match(/^
http:\/\/www\.aaabbbccc\.com/i )) { ---※
メインスクリプト( document は doc に置き換え)
} ---※
}
}
gBrowser.addEventListener("DOMContentLoaded", xxxYyyZzz, true);
}());
自分は、こんな風にして、
userChrome.jsで、GreaseMonkey風な動作をしてる。
全ページに適用させる場合は、※行を削除。
481 :
470 :2007/06/13(水) 07:34:38 ID:jZ+ZziHH0
Firefox 1.5.0.12で機能する検索バーをCtrl+Fで開いたり閉じたりできるスクリプトお〜くれ!
AutoPagerizeが便利過ぎて「1/13 次のページへ」なんて表示される糞サイトがあると ただちにXPath書くようになってしまった
>>482 の使い方がわからない低脳のボクちゃんに誰か解説お願いしまつ
>>486 diff patch windows 辺りでぐぐってみ
>>487 レスどうもです。
なんとか調べてパッチ当てられました。感謝です。
489 :
名無しさん@お腹いっぱい。 :2007/06/15(金) 18:25:37 ID:oilUlqg40
>>485 わかる。俺も書いてしまう。
最近対応サイトがかなり増えてきてますます便利。
490 :
名無しさん@お腹いっぱい。 :2007/06/15(金) 18:28:11 ID:3umN1+Kg0
1980.4.2〜81.4.1生まれ 松坂大輔、藤川球児、キングコング、優香、眞鍋かをり、広末涼子 朝青龍 1981.4.2〜82.4.1生まれ 滝沢秀明、今井翼、安達祐実、安倍なつみ、鈴木あみ、ブリトニー・スピアーズ 1982.4.2〜83.4.1生まれ 宇多田ヒカル、倖田來未、深田恭子、矢口真里、三船美佳、椎名法子 オリエンタルラジオ、北島康介、イアン・ソープ、ウイリアム王子 酒鬼薔薇聖人(少年A) 1983.4.2〜84.4.1生まれ オレンジレンジ、上田竜也(KAT−TUN)、中丸雄一(KAT−TUN) 小倉優子、ベッキー、寺原隼人 1984.4.2〜85.4.1生まれ 速水もこみち、赤西仁(KAT−TUN)、えなりかずき、若槻千夏、石川利華 アヴリル・ラヴィーン、タトゥー、木村カエラ、hiro(元SPEED)、白鵬 1985.4.2〜86.4.1生まれ 亀梨和也(KAT−TUN)、田中聖(KAT−TUN)、田口淳之介(KAT−TUN) 上戸彩、後藤真希、山下智久、小池徹平、ウエンツ瑛士 まなかな、中川翔子、宮崎あおい、宮里藍 1986.4.2〜87.4.1生まれ 亀田興毅、井上真央、松浦亜弥、高橋愛、石原さとみ、YUI ダルビッシュ、BoA、沢尻エリカ、リア・ディゾン、オルセン姉妹 1988.4.2〜89.4.1生まれ 斉藤佑樹(ハンカチ王子)、田中将大、大嶺裕太(ロッテ)、福原愛 亀田大毅、森本貴幸(サッカー)
>>492 オオオオオ!!!!即レスがつくなんて夢にも思ってませんでした。
光の速さで頂きました。
これで完全にIEとオサラバできます。
うp本当に本当にありがとうございます。
>>493 スマソ, 間違い発見, 修正されたし。
×var proxyhttp = text.substr(0,index-1);
○var proxyhttp = text.substr(0,index);
>>494 了解しました!
頂いてすぐに動作確認しましたが本家より使いやすくて嬉しいです。
>>495 たびたびスレ汚しスマソ。
1.選択文字のない場合および串らしくない文字列の場合串をリセットする様にした。
2.串らしい文字列の場合は,串としてセットする。
3.メニューのチェックマークがおかしいのを修正した。
DLは492と同じアドレスから。
>>496 バイトから戻ってきたらレスがついててビクーリ&ウレシスです。
改良乙です!またまた頂きました。
スレ汚しどころか何度もありがとうございます(,,゚∀゚)=3 ムハー
>>496 これuserChrome.jsのスクリプトですよね?
範囲選択して右クリックしてもコンテキストメニューに出て来ないです…。
何か間違ってるのかな?
Fx2.0.0.4でuserChrome.js0.7+Days on the MoonさんのところのUCJS Loaderです。
>>499 UCJS Loaderそのままじゃだめだったんですね。
上の方法で解決しました。
ありがとうございます。
ニコ動が保存できるスクリプト全部使えなくなったみたいだね
Middle Click and Go がページ内検索(Ctrl+f)のテキストボックスでも使えたら便利かも
>>501 俺が使ってるやつは問題なく保存できるぞ
俺のも全く問題ないな
506 :
238 :2007/06/20(水) 00:59:34 ID:591sbD6E0
>>257 >>80 氏、レス遅くなりましたがSeaMonkey対応感謝します。
動かしたきゃスクリプトの頭に加えろと教えていただいた次の日から
入院してしまい昨日やっとこ出てきました。
ありがたく使わせていただきます
>>508 おー、またアップデートあったのね。
直ったわ。さんくー
510 :
501 :2007/06/20(水) 06:00:21 ID:fRFvbDm20
ニコニコポンとニコvideon使えなくなったよ。 他になにがあるのか教えてよ!
自環境でニコニコのダウンロード関係は 拡張とuserChrome.jsとブックマークレット使える状態になってるが全部使えてる。
userChrome.jsのScroll Search EnginesはMenu Editorと併用できないということで
>>438-442 を見て解決しましたが
アイコンを虫眼鏡ではなくそれぞれのものにするにはどうすればいいのでしょうか?
>>510 どっちもトラッキングするようになってるから鯖が落ちてるだけだろ
resizeable_textareaのような動作をしてくれるスクリプトって無いでしょうか? Firefox2.0.0.3使っています。よろしくお願いします。
>>515 はええー・・ありがとうございました。
とりあえず下を入れてみました。
Greased Lightboxについて質問なのですが、 bmp画像も表示出来るようにするにはどうすればいいのでしょうか それと、大きい画像の場合縮小して表示されてしまいますが、一度で原寸大表示する方法はありませんか?
AiOジェスチャーのページを掴んでスクロールを誰かuserChrome.jsで作ってください>< お願いします><
521 :
512 :2007/06/20(水) 19:17:36 ID:BbTjHyiM0
>>517 ありがとうございます。
それは既に入れてます。
書き方が悪かったですね、スミマセン。
コンテキストメニューで検索エンジンのアイコンを表示させたいということです。
greasemonkeyの学習目的で(現在知識ゼロ)Resizable Form Fieldsを greasemonkeyスクリプトに移植してみようと思った矢先、 var appcontent = document.getElementById("appcontent"); if (appcontent) { appcontent.addEventListener("load", resizeTa.pageload, true); } ここのif文が通らないようで、"appcontent" とはなんぞやとgoogleしてみましたが 解決できませんでした。 ここら辺の事情おわかりの方教えていただけないでしょうか?
>522 #appcontentはFirefoxのブラウズ領域を囲っているボックス。 Greasemonkeyスクリプトはブラウズ領域の中で動作するので ブラウズ領域の外にある#appcontentにはアクセスできない。 ここでやってることはページ読み込みの度にresizeTa.pageload()を 走らせるよう登録しているだけなので、Greasemonkeyスクリプトなら 無視していい。
525 :
522 :2007/06/20(水) 20:01:58 ID:TbL3tLKA0
>>523 即レスありがとうございます。
その辺考慮したらあっさりGreasemonkeyスクリプトになりました。
>>482 ,
>>527 こうなるとそういう機能を欲しているユーザは
素直にGreasemonkeyを使用すれば?と本音。
529 :
512 :2007/06/20(水) 23:11:26 ID:BbTjHyiM0
>>529 >のuserChrome.jsの最初に ....
おかしいですね, 当方では問題ないのですが....
そのサブスクリプトローダに,その行を追加してしまうと,
メインウインドウ以外(サイドバー含む)にuc.jsおよびxulが
適用できなくなります。
そういうスクリプトを使う予定がなければどうでもいいことですね。
>>527 修正版ありがとうございます。
でもなぜか上書きしても動作しません。それどころかuserContent.js自体、動きません。
今まではUCJSFilesフォルダにuserContent.jsを入れて動作してました。
環境はFx2.0.0.4 WinXP penMです。
532 :
512 :2007/06/20(水) 23:55:01 ID:BbTjHyiM0
>>530 >当方では問題ないのですが....
ということで、新規プロファイルを作って1から入れ直してみたところ、
こちらでも問題なく動くようになりました!
お騒がせして申し訳ないです。
本当にありがとうございました!
>>531 userContent-mod2007.06.20.uc.js の
30-32行目を削除してみてください。
//================================================
CHROMEDIRECTORY.append("GM_userContent");
//================================================
の部分です。
>>533 度々申し訳ございません。それだと動作はしますが、やはり起動時のページには適用されません・・。
あと、環境で書き忘れたことがありました。Fxは綾川氏のビルドを使っております。
UAはMozilla/5.0 (Windows; U; Windows NT 5.1; ja-JP; rv:1.8.1.3) Gecko/2007051908 BonEcho/2.0.0.4 (ayakawa SSE2-PGU)
です。
>>534 userChrome.js0.7/0.8のイベントの発行がFxのwindowが完成してからなので,
ホームページに設定したWebページの読み込み完了の方が速いと, ダメですね。
userChrome.js0.7/0.8の限界?
今話題のSafariのインライン検索ハイライトっぽくなる物を作ってみた。
如何せん汚いやり方をしてると思う。
http://kuonn.mydns.jp/fx/SafariHighlight.uc.js Mozilla/5.0 (Windows; U; Windows NT 5.1; ja-JP; rv:1.9a6pre) Gecko/20070615 /3.0a6pre (Firefox musume)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ja-JP; rv:1.8.1.5pre) Gecko/20070620 Firefox/2.0.0.5pre (Firefox musume)
で動作確認済み(マイナーなMOD使ってるとかゆーな)
少し気になってるのはハイライトにチェックを入れたまま検索バーを閉じた再にオーバーレイを消すかどうか。
現状では消してます。
私の場合、目当てのものが見つかってもわざわざチェックを外さないから。
>>535 なるほど。わざと重いページを表示させて試したところ、ちゃんと動作しました。
でも大概のページはだめですね・・。まさか動作が重い方が良いことがあるなんて思いもしませんでした。
起動時にも適用させたいスクリプトは、おとなしくGreasemonkeyで読み込ませることにします。
ありがとうございました。
538 :
536 :2007/06/21(木) 01:45:20 ID:R1d4hSGB0
お馬鹿なBugをたった今Fixして再UP。同じ場所に。
>>526 トンです
引き続き、どなたかGreaseMonkeyでbmpを表示させる方法をご存知の方いましたら、教えて頂ければ幸いです
>536 動かないです。 alice0775とこのローダーつかってるんですけど、どうすればいいですか?
>>537 蛇足だけど, ファイル名をuserContent.uc.jsから000-userContent.uc.jsにして, 一等最初に
実行されるようにすれば, うまく行く確率が上がります。
また, tp://space.geocities.yahoo.co.jp/gl/alice0775/view/20070619/1182255320 の
ローダーもuc.js群→xul群の順に読み込む様に変更した。
当方は,ホームページに空白ページを設定しているのであまり問題視していない。
CopyLinkTextのuserChrome.js板てありますか?
直リンダメだった。Top から> Uploader5(70M) を選んで > bh2389.txt
>>543 JSAとかの方がいいと思うが。適当な名前.jsにしてlinkフォルダに保存。
userMenu.jsなら適当な名前.li.jsにしてcontextmenuフォルダに保存。
(function(){
_jsaCScript.setClipBoardString(_jsaCScript.context.link.text);
})();
みんなおはよ
>>546 ところでおまえって、alice0775氏か?
548 :
536 :2007/06/21(木) 10:14:03 ID:GcBfp7fv0
>>541 流石に動かない、とだけ言われても分からないので
UAと、もしエラーコンソールにエラーが吐き出されてるようならそのエラーを。
あと、言い忘れてましたが強調表示にフックしてるだけなので、強調表示をONにしないと効果がありません、悪しからず。
強調表示を無効にして強制的にSafariっぽくハイライト、のが良いですかねぇ?やっぱり。
>>325-327 「右ダブルクリックでリンクを新しい『裏の』タブで開く」ことは可能でしょうか?
326のスクリプトの一部変更で大丈夫であれば、よろしくお願いします。
551 :
541 :2007/06/21(木) 11:39:09 ID:EQu1PiNU0
>548 舌っ足らずでゴメン。 UAは、 Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.8.1.4) Gecko/20070531 BonEcho/2.0.0.4 (tete009 G7 SSE2) で、エラーは出ていないようでした。 ファイルは、chrome/SubScript/SafariHighlight.uc.js の位置に保存しています。
>>550 土木家氏ですか
alice0775氏じゃないんか・・・
失礼しました。
対応の速さからUserChrome.jsのフォーラム思い出して想わず聞いてしまった。
しかし、あなたもすごい人!
554 :
536 :2007/06/21(木) 12:03:53 ID:GcBfp7fv0
>>551 むぅ……teteSSE20070531で試してみるも動作するなぁ。
とするとSub-Script Loader側かなぁ……しかし、alice0775さんの所のを使ってるのなら私と状況は一緒だし。
SubScriptフォルダ下に置いてるみたいだし。当然、他にもスクリプト入れてて動いてるのだろうし。
やばい、さっぱり原因がわからないorz もうちょっと調査してみます。
あ、そうそうframeを使ってるページじゃ使えないです。iframeも同様。
対処法を考えてはいるものの、根本的にやり方を変えたほうがいいのだろうか。
555 :
543 :2007/06/21(木) 12:12:25 ID:b/wV5QnR0
>>543 >>546 ありがとうございます。
拡張が多く、これ以上増やしたくなかったのでuserChrome.jsがいいなと思ったのです。
543の方は謎のエラー(?Fxの下部分がグレーになって赤字出現)だったので
546のuserMenu.jsにしてみたのですが、
コンテキストメニューに出て来たもののクリップボードにコピーされません。
他にサンプルファイルを入れてみたのは正常なので設置は間違っていないと思うのですが…。
userCrome.js 0.8とSub-Script/XUL Loader使っています。
556 :
541 :2007/06/21(木) 12:16:20 ID:EQu1PiNU0
>554 動きました。フレームのページ見ていました。 お騒がせいたしました。
558 :
541 :2007/06/21(木) 12:20:46 ID:EQu1PiNU0
559 :
541 :2007/06/21(木) 12:24:39 ID:EQu1PiNU0
>554 暗くなっている最中はマウスのホイールが効かなくなってしまうようです。
>>555 xulがおかしくなる件は, 当該ファイルの
<stringbundleset id="stringbundleset">
<stringbundle id="copylinktext-strings" src="chrome://copylinktext/locale/copylinktext.properties"/>
</stringbundleset>
を削除してみてはどうか。 尚,当方ではその現象は発生しない。
userMenu.jsで動かない件はおそらくjsa.jslがないためと思われる。
userMenu.js.0.5.zipの中のpreload.sample.txtに以下の様に述べていることをしないことには,
JSActions用のスクリプトをuserMenu.jsで動かすことはできません。
--以下抜粋--
JavaScriptActions の内蔵ライブラリにも対応しているので,
JavaScriptActions から cscript.js と言うファイルを抜き出し,
ファイル名を jsa.jsl と変更してホストと同じディレクトリに入れる事で,
JavaScriptActions が提供する関数群が使えるようになる.
JavaScriptActions の提供する関数が使いたい,或いは JavaScriptActions 用のスクリプトを使いたい方はどうぞ.
--ここまで--
JSActionsは「+ HideAway Firefox +」さんのところからダウンロードすればよい。
ttp://openhideaway.net/Firefox/files/jsactions/ 後は上記に書いてあるとおりにする。
>>549 gBrowser.loadOneTabの最後から二つ目の引数をfalseからtrueにすればおk
562 :
536 :2007/06/21(木) 12:41:39 ID:GcBfp7fv0
>>558 うちではちゃんとなるなぁ……。
暗くなった後ろで対象の文字が黄色くなってますか?
ただ単に大文字と小文字を区別にチェックが入ってた、なんてオチじゃないですよね?
>>559 半透明のpngを上に被せてるだけだからホイールの動きなんて弄ってないんだけどなぁ。
うちではホイールでのスクロールもホイールクリックでのスクロールも動いてる。
さっき消しちゃったけど、もう一度teteSSE20070531を動かしてみます。
563 :
543 :2007/06/21(木) 13:42:12 ID:b/wV5QnR0
>>560 うわぁぁぁぁん!ごめんなさい!
544のxulでちゃんと出来ました!
リファラを送ってなかったんで正しくダウンロード出来てなかったみたいです。
落し直したらちゃんと動きました。
ありがとうございます。
自分アホスorz
userMenu.jsの解説もありがとうございます。
preload.sample.txtの方読んでなかったですすみません。
xul落し直す前に途中まで挑戦してみたのですが挫折しました。
JSActionsの中のcscript.jsが見つからなかったのですが
xpiを解凍した中に入っているのではないのですか?
とんちんかんな質問でしたらすみません。
後学のために知っておきたいです。
>>562 うちもホイール効かない。原因はposition:fixed;
absoluteにしてdocument.documentElement.scrollWidthとscrollHeightからサイズとればホイール効くよ
ウィンドウサイズの変更に対応させるのめんどいけど
あと画像使うよりbackground-colorと-moz-opacity使った方が軽いと思う。気のせいかな
Safari分インライン検索SUGEEEE!! SearchWPの検索に実装して欲しい
>>561 ありがとうございます! うまくいきました!
568 :
536 :2007/06/21(木) 17:42:08 ID:GcBfp7fv0
569 :
536 :2007/06/21(木) 17:47:16 ID:GcBfp7fv0
忘れてた。 既知の問題 ・スクロールバーの必要も無い小さなページの時に下の方が暗くならない。
>>568 ちょっと違うんですかね、本来の動作と?
alice0775さんの「Findbarの入力欄に履歴(Web検索バーと同期)を追加する」
を、たぶん入れています;
新バージョンも、これから使わせていただきますm(__)m
571 :
536 :2007/06/21(木) 18:32:00 ID:GcBfp7fv0
>>570 そのスクリプトとは干渉しないなぁ……。んむ〜。
しかし、
>>570 =
>>558 なのかな?
違うのならUAを教えてもらいたいかも。
同じなのなら……一応入れてるアドオンを全部聞きたいかも。userChrome.jsスクリプトも。手がかりを見つけないことにはさっぱり分からない。・゚・(ノд`)・゚・。
>>568 スクロールできるようになりました。
半透過色もsafariのに近づいていい感じです
573 :
541 :2007/06/21(木) 18:41:53 ID:atKCTxY50
574 :
541 :2007/06/21(木) 18:47:57 ID:atKCTxY50
>>568 以下のものと一緒でも動いてますよ〜
ucjs_findbar : Findbarページ内検索結果を画面中央に表示 XMigemo 0.4.10(Forked)対応
addHistoryFindbar : Findbarの入力欄に履歴を追加する(改1)
copyToandClearFindbar : ページ検索バーのCPYボタンでWeb検索ボックスの文字列をコピーする ページ内検索バーのCLRボタンでインプットボックスをクリアする
Ctrl+F押したらFindbarが出るけどもう一回押したら消える
576 :
570 :2007/06/21(木) 18:55:40 ID:Y6dafUu70
577 :
541 :2007/06/21(木) 19:09:02 ID:atKCTxY50
>568 連投スミマセン。 暗くなっているときのマウスのホイールのスクロールは効くようになりましたが、 リンクができなくなっているようです。
>>569 ごめん、document.documentElement.scrollWidthとscrollHeightじゃなくて
document.body.scrollWidthとdocument.body.scrollHeightだった
579 :
536 :2007/06/21(木) 21:00:10 ID:R1d4hSGB0
580 :
536 :2007/06/21(木) 21:01:55 ID:R1d4hSGB0
>>577 仕様です。諦めて下さい。
むしろ別のやり方で暗く出来るのなら教えて欲しいくらいですorz
>>536 氏
ありがたくスクリプトを使わせてます。
更新の方、何度も乙です。
ひとつ要望が・・。
検索時に最初からハイライトがかかっている状態にするには
スクリプトをどう弄ればいいでしょう?
使ってみたらものすごく便利なのでこれをデフォにしたいなと思いました。
>>581 find toolbar tweaksを導入して
自動で強調表示にチェック入れておけば
最初からハイライト状態になるよ
584 :
536 :2007/06/21(木) 23:33:51 ID:R1d4hSGB0
再度更新。
ttp://kuonn.mydns.jp/fx/SafariHighlight.uc.js >>581 検索開始時は常時強調表示させる機能を追加しました。
Fx3ではFindbarの仕様が違ってFind Toolbar Tweak使えないので。
17行目で設定します。デフォルトでは検索開始時は常時強調表示状態になっています。嫌ならtrueをfalseに。
>>583 あちゃー……ブラウザの仕様かぁ、やっぱり。
薄いけど辛うじて見えるし、まぁしょうがないかorz
あとAutoPager系とは相容れません。
これは解消できなくもなさそうでも有るけど……監視すると少し重くなりそうな。
ページ内検索の強調表示の色を変えるにはどうしたらいいんだろう? デフォルトの黄色でもいいんだが、もうちょっとおとなしい色の方がいい気がする。 たぶんCSSをいじれば出来ると思うんだけど。
ttp://www.mozilla-japan.org/unix/customizing.html#prefs // テキストの選択範囲の色を設定:
user_pref("ui.textSelectBackground", "green");
user_pref("ui.textSelectForeground", "white");
// Type Ahead Find の選択範囲の色は若干異なります:
user_pref("ui.textSelectBackgroundAttention", "blue");
// widgetSelectBackground がいつ、どのような状態で呼び出されるのかははっきりしません。ぜひ発見してください。
user_pref("ui.widgetSelectBackground", "orange");
試したら使えたけど、うまくいかないことがある。。。
587 :
536 :2007/06/22(金) 00:51:57 ID:gKh9zNm90
ハイライトの黄色の奴は
userContent.cssに
#__firefox-findbar-search-id,
.__mozilla-findbar-search {
color: 文字色 !important;
background-color: 背景色 !important;
}
で変更できる筈。
選択ハイライトの緑のは……
>>586 なのかな。明日にでも調べてみる。
>>584 個人的な要望だったのですが、
FX3での動作も考慮の上、要望を実装して頂いて嬉しいです。
激しくトンクスです。
>>582 もアドバイストンクスです。
おお、クイック検索対応か こりゃ良いやウッヒョー
>>587 レスサンクスです。でもそれでは上手く変更できませんでした。
ですが、このサイトを見て事故解決しました。
http://userstyles.org/styles/153 上記のCSSを少し改変したのを、一応書いておきます。
@namespace url(
http://www.w3.org/1999/xhtml );
span#__firefox-findbar-search-id {
color:black !important;
border:1px #900 solid !important;
background-color:#afeeee !important;
}
これでデフォルトの表示よりかなり見やすくなったと思います。
見やすくなったというのは間違いだな・・。 好みの色になったと言い換えよう。 ってどうでもいいかこんな事。
middle-click-and-go.uc.js を新タブで開くようにするにはどこ換えれば良いの?
>>584 SafariHighlight.uc.js ver 0.4 導入時、Google Reader で表示が崩れるようです。
おそらく、スクリプトの中で iframe の style を relative に設定しているのが
影響しているようです。
594 :
536 :2007/06/22(金) 10:51:39 ID:RJELponG0
80さん作の空白タブを閉じる(
>>177 )がnewtab(
>>193 )を入れると働きません。
TabMixLiteだとちゃんと閉じてくれるのですが、原因が分かりますでしょうか?
userChrome.jsは0.7で、Days on the MoonさんのUCJS Loaderを使用しています。
WinXP、Firefoxは2.0.0.4です。
596 :
536 :2007/06/22(金) 17:13:59 ID:RJELponG0
ver. 0.6をUPしました。
ttp://kuonn.mydns.jp/fx/SafariHighlight.uc.js 変更点
・SearchWP, Googlebar Liteのハイライトにも対応。
不具合
-z-indexが指定されているページだとうまくハイライトできない。(ブラウザの仕様?
-リンク等がクリックできなくなる。(オーバーレイしている都合。仕様かも。
-FLASHにはオーバーレイしない。
残りの不具合を潰せる気がしない(;´Д`)
>>596 バージョンうp早すぎワロタ
がんばってください。
>リンク等がクリックできなくなる。(オーバーレイしている都合。仕様かも。 これはsafariの方でも同じくクリックできませんね。 クリックでオーバーレイ解除になってます
>>596 すげーSearchWP対応待ってました!
使わせていただきます。ありがとうございます。
>>598 >クリックでオーバーレイ解除になってます
これいいですね。対応して欲しい・・・
>>596 piroさんの所のTab CatarogのgetClickableElementFromPointをうまく使えば,
オーバーレイの下のリンクにアクセスできると思う。
536さんかpiroさん当たりがやってくれると期待w
602 :
80 :2007/06/22(金) 20:22:55 ID:QQ6gFvNk0
>>602 いただきました!いつもありがとうございます。
605 :
536 :2007/06/22(金) 21:57:32 ID:gKh9zNm90
ver. 0.7をUPしました。
ttp://kuonn.mydns.jp/fx/SafariHighlight.uc.js 変更点
・Safariのように画面クリックでハイライトを終了する事が出来ます。clickAndExitをtrueからfalseにすれば無効化します。
alwaysHighlightとclickAndExit両方がtrueだと、かなりSafariっぽい動作をします。
・オーバーレイの追加を実行するタイミングをloadイベントではなく,DOMContentLoadedイベントに変更。
既知の不具合
・z-indexが指定されているページだとうまくハイライトできない。(ブラウザの仕様?
・リンク等がクリックできなくなる。(現在奮闘中
・FLASHにはオーバーレイしない。
>>601 見てみました。
ぱっと見じゃ何処が何してるのかサッパリなので、ゆっくり解読していきます。
>>602 頂きました。これのおかげでGreasemonkey手放しちゃってますw
>>605 >Safariのように画面クリックでハイライトを終了する事が出来ます。
すごいいいです!!
>>605 いいかげんうざい
どっかのブログでも借りてやってください
ブックマークしとくから
なんかすごい波がきてないか・・このスレ・・すごい
>>608 d.hatena にあるやん。探し方下手。
>>608 何が悪いんだよw クレクレスレにしたいのか?
>>602 頂ました。ありがとうございます。
ただなんかJSActions用のScriptが動かないような。
userMenu.js0.5では動いてたんですが。勘違いだったらごめんなさい
>>602 を使うとgreasemonkeyより軽くなるの?
そう言われると思ったんだけど 拡張多すぎてよくわからない
>>605 連日の更新乙!です。
余談ですが、
>>536 氏の怒涛の更新が楽しみで
スレ更新の頻度があがりましたw
今回のVerうpでますます便利に検索が出来そうです。
>>606 更新乙!です。スクリプト頂きました(・∀・)
馴れ合いスレかここは
誰か
>>557 をもっと分かりやすくお願い。
この文章だと、
どうやったら「UCJS_Loader専用のもの」だと分かるのか、
「JS v1.7ja」とは何か、
どうやったら「browser.xul以外にoverlayするもの」だと分かるのか
が分からない。
>>602 いただきました。ありがとうございます。
userContent.uc.jsの65-66行目にtypoあるみたいです。
try catchでメッセージが{}の外に出ちゃってます。
userChrome.jsとか、GreaseMonkeyとか、Stylishとか、 何でも出来ちゃう系の拡張って、 自分が使うために自分でスクリプト書いて、 バンバンカスタマイズしていくっていう目的の拡張じゃないのかなぁ? この流れは、なんか、ちょっと違うのかな。と、思ってみたり・・・(´・ω・`) こういうことが出来そうとか、おもしろい使い方とか、 ネタやアイディア、技術的なことを話すスレかと思って見始めたのだけど、スレ違い?
どちらかを選ばなきゃいけないのかい
>>519 scrollbarAnywhereだったら中のjsほとんどそのままで動きますよ
pref設定してるとこ自分の好みの決めうちに書き換えてあげればよろし
グリモンではなくてuserContent.jsを使う利点って何ですか? スレをざーっと流し読みしてみたけどよくわからんかった
>>602 userContent.js 0.7にしたら動作しなくなったので0.6に戻した
OSがMEなのって関係ある?
>>630 catch(e){} のところ
catch(e){
エラーメッセージ; }
です
632 :
名無しさん@お腹いっぱい。 :2007/06/23(土) 17:04:53 ID:ug9vS8eC0
やってる事は他のアドオンの寄せ集め。 管理や設定が面倒になってただけで 実際の動作は同じだから軽くなってすらいない。 おまいら何がやりたいんだ?
>>632 動作が同じだったら軽くならないのか
プログラマ涙目だなw
635 :
80 :2007/06/23(土) 18:08:52 ID:bpw7N3AC0
userContent.js userMenu.js 共にバグが在ったので修正しました.
両方まとめて本体ファイルのみのアーカイブにしてあります.パスは「magai」で.
http://www6.uploader.jp/dl/script/script_uljp00001.zip.html >>620 loadSubScriptが一度も成功しなかった場合にエラーメッセージを吐く仕様なので,
catchの外にある事自体は良いんですが,
errMsgで使っている「e」が宣言されてないのでマズイので直しました.
ご指摘ありがとうございます.
>>595 調べたところ,UCJS Loaderでも空白タブを閉じるスクリプトは動きます.
恐らく,同じファイルに書かれている他のスクリプトがエラーを吐いて止まっていると思われるので,
エラーコンソールで確認してみてください.
>>616 ありがたく使わせていただきました.
>>623 scrollbarAnywhere.jsをscrollbarAnywhere.uc.jsにリネームして
設定値を直接prefs.jsに書き込んだのですがダメですたorz
どこをどう手を加えればいいのでしょうか?おながいします
>>635 更新乙です
>>636 拡張機能をインスコすれば事足りるのではないですか?
xpiの中のスクリプトを殆どそのまま使うのであればuserChrom.js用スクリプトにする意味あるのですか?
>どこをどう手を加えればいいのでしょうか?
と質問されているので, 改良することもないのでしょう?
目的をよく考えられた方がいいと思いますが,どうでしょう?
半角の「?」の人 頑張ってるね
ID変えてまで延々おつかれさまです
どなたか
>>193 のスクリプトをもう一度うp
してくれないでしょうか?
仮ブログぐらい立てりゃいいのに。
>>636 えーと、prefよんでセットや分岐してるようなところ削って、っていうつもりでしたが...
あとはxulにあるようにInitを発動すればいいんですけど...
この拡張のコードなにやら難しいので、まとめサイトにあるdragimage.uc.jsとか
流用させてもらったほうがいいかもです。
おれは、半角の「?」の人の言ってることに賛成派なんだけどねぇ。 userChrome.jsやgreasemonkeyみたいなユーザースクリプトは、 理解できないなら、無理して使うレベルの拡張では無いと思う。
645 :
595 :2007/06/24(日) 08:54:15 ID:LAf1QI7F0
>>635 レスありがとうございます。
Firefox起動時の空白タブ以外にはスクリプトが動きました。
ちなみに、エラーは出ていません。
646 :
636 :2007/06/24(日) 11:06:46 ID:7QgskVWL0
>>642 ありがとうございます
dragimage.uc.jsで子ノードが"IMG"以外でも動作するようにしてみたら、
希望の動作になりますた
>>644 おお、こちらもありがとうございます
設定も楽だし素晴らしいです、さっそく愛用させていただきます
煽ったり作ったり大変だな
まとめサイトにうpしてくれればいいのに。
なんで?
最近やたら難癖つける人がいるね
夏ですね。
まぁ所詮自己満足だな
656 :
80 :2007/06/24(日) 18:40:57 ID:gRz+tq1A0
>>645 直しました.これで起動時の空白タブも消せるはずです.
// Auto Close Blank Tab
(function(){
var tab = gBrowser.mTabs,max = tab.length;
for(var i = 0;i < max;++i){
var win = tab[i].linkedBrowser.contentWindow;
win.blank = (win.document.URL == 'about:blank');
}
gBrowser.addEventListener('DOMContentLoaded',function(event){
var win = event.originalTarget.defaultView;
if(win == win.top) win.blank = (win.document.URL == 'about:blank');
},false);
gBrowser.tabContainer.addEventListener('TabOpen',function(event){
var win,tab = gBrowser.mTabs,max = tab.length;
for(var i = 0;i < max;++i){
if(tab[i] == event.target) continue;
win = tab[i].linkedBrowser.contentWindow;
if(win.blank){ gBrowser.removeTab(tab[i]); --max; }
}
},false);
})();
>>647 ,657
ああっ、さらにどんどん便利になってますね
ありがたく使わせていただきます
>>658 なんかすごい大作ですね
私の場合自分でそんなscript書けないので642のように移ってきて
中クリ使用で60行足らずデス
>>659 拡張機能その他のスクリプトなど, どれを使うか否かを決めるのは自分自身。
最もマッチするものを選択すればいいと思う。
onload時に 画面上の特定のアンカーを自動的にクリックさせるには どうすればいいの? 下記じゃだめだったよorz var nodes = document.evaluate( '//a', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null ); for (var i = 0, elm; elm = nodes.snapshotItem(i); i++) { if(特定のアンカーを見つける条件){ elm.click(); break; } }
document.createEventを使えばイベントを生成できるけど location.href=elm.hrefでいいんじゃないの
663 :
661 :2007/06/24(日) 23:41:56 ID:6e0/ofeu0
>>662 location.href=elm.hrefだと
リファラとかちゃんと
設定されないんじゃないかと、、?
664 :
661 :2007/06/24(日) 23:42:45 ID:6e0/ofeu0
追記、 document.createEvent調べてみます。
リファはちゃんと設定されるが
666 :
661 :2007/06/25(月) 01:23:02 ID:MPtTY2RS0
なるほど 勉強になりますた。 ありがとうっす
ここまでくると普通に拡張使った方がましと言う罠。
SearchButtonにあった 「検索エンジンのアイコンをホイールクリックで検索バーをクリア」 ってのを探してるんですが、どなたか知ってましたら教えて下さい。 アレ便利だったし。
>>668 前にどこかでもらった奴だけど
userChrome.js用
(function() {
// If it is necessary, the user please rewrite.
const ClikType = 1;// 0: left, 1: mid, 2: right
// Clear Serch Box
var clearSearchBox = function(event){
if ( event.button == ClikType ){
var searchBar = BrowserSearch.getSearchBar();
if (searchBar){
var searchBox = searchBar._textbox || searchBar.mTextbox;
searchBox.value = '';
// Dispatch fake input event
var inputEvent = document.createEvent('Events');
if (inputEvent){
inputEvent.initEvent('oninput', true, true);
searchBar.dispatchEvent(inputEvent);
}
searchBar._textbox._displayCurrentEngine();
}
event.preventDefault();
}
};
var searchbar = BrowserSearch.getSearchBar();
document.getAnonymousElementByAttribute(searchbar, "anonid", "searchbar-engine-button")
.addEventListener("click", clearSearchBox, true);
}());
なんという高速…多謝
>>656 これを導入すると起動時に復元されるタブが一つ閉じられてしまいます
ttp://vista.crap.jp/img/vi8276973819.png SafariHighlight.uc.js ver. 0.8.2使わせて頂いています
はてなやってないんで書き込みしていいのか
わかんないんで、ここに書き込みします
何も入力していない状態で、↑みたいな感じになるんですが
どうにかできないでしょうか?
searchWP search box sync仕様
Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4
WinXPsp2
お願いします。
675 :
536 :2007/06/25(月) 21:15:38 ID:8BvcaUtM0
>>675 素早い対応ありがとうございます。
今度からは、はてなの方に書き込みしたいと思います
これからもがんばってくださいm(__)m
>>635 更新乙です
SeaMonkey v1.1.2でも問題なく動いています。
ありがたく使わせていただきます。
>>673 氏も報告しているAuto Close Blank Tabですが、SeaMonkeyでは
正常に機能しているのですが、Firefoxでは私の環境でも
(Gecko/20070515 Firefox/2.0.0.4)ブックマークやパーソナルツールバーから
中クリックでタブをまとめて開くと最初のページが開けません。
お時間が御座いますときに確認お願いします。
>>673 ,
>>677 80氏じゃないけれど, 修正した。さらにタブの復元時にも空白タブを消去するようにしてみた。
// Auto Close Blank Tab
(function(){
var tab = gBrowser.mTabs,max = tab.length;
for(var i = 0;i < max;++i){
var win = tab[i].linkedBrowser.contentWindow;
win.blank = (win.document.URL == 'about:blank');
}
gBrowser.addEventListener('load',function(event){
var win = event.originalTarget.defaultView;
if(win == win.top) win.blank = (win.document.URL == 'about:blank');
},false);
gBrowser.tabContainer.addEventListener('TabOpen',function(event){
var win,tab = gBrowser.mTabs,max = tab.length;
for(var i = 0;i < max;++i){
if(tab[i] == event.target) continue;
win = tab[i].linkedBrowser.contentWindow;
if(win.blank){ gBrowser.removeTab(tab[i]); --max; }
}
},false);
gBrowser.tabContainer.addEventListener('SSTabRestored',function(event){
var win,tab = gBrowser.mTabs,max = tab.length;
for(var i = 0;i < max;++i){
if(tab[i] == event.target) continue;
win = tab[i].linkedBrowser.contentWindow;
if(win.blank){ gBrowser.removeTab(tab[i]); --max; }
}
},false);
})();
>>678 ごめん(function(){の次からの以下の5行を消してください。消し忘れm(._.)m
var tab = gBrowser.mTabs,max = tab.length;
for(var i = 0;i < max;++i){
var win = tab[i].linkedBrowser.contentWindow;
win.blank = (win.document.URL == 'about:blank');
}
タブバーをホイールクリックで「最後に閉じたタブを開く」という動作をする uc.js(もしくは拡張機能)ってありませんでしたっけ?
>>680 デフォではタブ上で中クリックを押すとタブが閉じるという設定になっており,
タブを多数開くとタブバーはタブが占めてしまい空白スペースは殆ど無くなります。
その場合,お望みの操作は困難になることが予想されますが...
>>680 ユーザースクリプトは知らんが、
拡張ならundo closed tabs button
みんなおはよ
>>678 乙です。
今、Firefox(v2.0.0.4)とSeaMonkey(v1.1.2)にて動作確認しました。
>中クリックでタブをまとめて開くと最初のページが開けません。
は修正されていました。
しかし、空白タブを複数開くことができてしまうことと、URLバーからの検索時に
複数の空白タブが存在した場合、表示しているタブ以外は空白タブとして
残ってしまうことを確認しましたが如何でしょうか?
>>681 .tabbrowser-tab { margin-bottom: 15px ! important; }
なのでご心配には及びません。
>>682 一応導入済みです。が、ツールバーは若干遠いですし
普段タブをホイールクリックで閉じてますので
タブバーをホイールクリックで閉じたのを開くだと
UI的に心地良いので。
>>683 ども。仮に自作するとなった時に参考になりそうです。
拡張の方は思い出しました。superTでした。
これのtabclicking.jsの部分だけなんですが…。
>>685 そういうことなら,どーぞ。
/**
* Undo close tab by middle-click "Tab Strip..
* Requires Firefox 2.0 and userChrome.js extension.
*/
document.getAnonymousElementByAttribute(getBrowser(), 'class', 'tabbrowser-strip')
.addEventListener("click", function(aEvent){ if (aEvent.button == 1) undoCloseTab(); }, false);
688 :
80 :2007/06/26(火) 18:29:37 ID:NunmfGR10
>>673 >>677 直しました.
おかげでシンプルになりました.
// Auto Close Blank Tab
(function(){
gBrowser.tabContainer.addEventListener('TabOpen',function(event){
var win,tab = gBrowser.mTabs,max = tab.length;
for(var i = 0;i < max;++i){
var shell = tab[i].linkedBrowser.docShell;
if(!shell.isLoadingDocument && shell.document.URL == 'about:blank'){ gBrowser.removeTab(tab[i]); --max; }
}
},false);
})();
このスレ3人ぐらいしかいないだろw
>>689 スクリプト書けるのは三人しかいないっぽい。
692 :
80 :2007/06/26(火) 22:07:03 ID:J77tvQKG0
>>688 のは空白タブを閉じない時があったので修正.
ついでに,
>>678 さんのを参考にタブ復元時に作動するようにしてみた.
// Auto Close Blank Tab
(function(){
function callback(event){
var tab = gBrowser.mTabs,max = tab.length;
for(var i = 0;i < max;++i){
if(tab[i] == event.originalTarget) continue;
if(!tab[i].linkedBrowser.docShell.isLoadingDocument
&& tab[i].linkedBrowser.contentWindow.document.URL == 'about:blank'){
gBrowser.removeTab(tab[i--]); --max;
}
}
}
gBrowser.tabContainer.addEventListener('TabOpen',callback,false);
gBrowser.tabContainer.addEventListener('SSTabRestored',callback,false);
})();
693 :
677 :2007/06/27(水) 00:30:59 ID:ID77ZvqU0
>>692 修正ありがとうございます。
SeaMonkeyでは、全ての動作okでしたが、
Firefoxでは起動後最初の複数タブを開く動作の時だけ
並び順が最初になっているサイトが開きませんでした。
他のスクリプトは抜いた状態での確認ですので再現可能と思いますが
報告いたします。
もう、おまいが、自分で作ればいいんじゃね?
userChrome.js使ってるのに、
スクリプトはさっぱり。なんて言わせないぞ(`・ω・´)シャキーン
>>691 このスレオワタ\(^o^)/
思う存分終わってくれ。一人で。
696 :
604 :2007/06/27(水) 11:36:26 ID:gRaucPvx0
環境も書かずに質問とな
698 :
604 :2007/06/27(水) 12:04:38 ID:gRaucPvx0
xpsp2 2.0.0.4
>>698 userChrome.js のヴァージョンとスクリプト・ローダはどこのを
使ってるかも書かないと答えてもらえないんじゃない?
700 :
604 :2007/06/27(水) 12:46:15 ID:gRaucPvx0
userChrome.js0.7 ローダ?
>>604 のサイトのことか?な
userChrome.js0.8 aliceさんのLoaader でSubScript Folderに置いたら動いたよ Paste and Go.uc.js
ローダーを使ってないのに拡張子をuc.jsにしてるに100ペリカ。
つまんないオチだなぁ。
704 :
604 :2007/06/27(水) 15:15:03 ID:gRaucPvx0
0.8にした。ローダーはSub-Script_XUL Loaderってやつ。
>>702 のようではない
705 :
604 :2007/06/27(水) 15:39:25 ID:gRaucPvx0
>>701 chromeフォルダにいれるんじゃねーの?あと、ちゃんとUTA-8でコピペしてuc.jsとしてchromeフォルダに保存した。
>>705 chromeフォルダの中にSubScriptフォルダを作って、その中に置く。
>>604 A.userChrome.js0.8
A-1.
ttp://www.haslo.ch/zeniko/software/userchrome.js.2.xpiからダウンロード,インストール 。
(ダウンロードしたxpiファイルをFxのウィンドウにドラッグ&ドロップ)
A-2.
ttp://stashbox.org/23456/subscriptloader.jsをダウンロードし,名前をuserChrome.jsに変更し, chromeフォルダの中に上書き。
B.userChrome.js0.7
B-1.
ttp://www.haslo.ch/zeniko/software/userchrome.js.xpiからダウンロードし,インストールする 。
B-2.
ttp://forums.mozillazine.org/viewtopic.php?t=397735からSub-Script/XUL Loaderをダウンロードし,名前をuserChrome.jsに変更し, chromeフォルダの中に上書き。
C.userChrome.js0.7を使い,JavaScript1.7などUCJS Loader用のスクリプトを使うのなら
C-1.
ttp://www.haslo.ch/zeniko/software/userchrome.js.xpiからダウンロードし,インストールする 。
C-2.
ttp://nanto.asablo.jp/blog/2006/12/31/1083170をダウンロードし,名前をuserChrome.jsに変更し, chromeフォルダの中に上書き。
3.使用するスクリプト(*.uc.js/*.uc.xul)をchromeフォルダの中に入れる。
4.Fx再起動
>>701 >>706 さんの方法はalice0775さんが自分がスクリプトを整理をしやすいように複数のフォルダに分けるようにしたもの。
なんかたいへん読みづらくなりました。
>>604 701です 706,707さんのおっしゃるとおりです
709 :
80 :2007/06/27(水) 17:58:14 ID:Q0z5F3d50
>>693 直してみました.
(function(){
function callback(event){
if(event.type == 'SSTabRestored'){
if(gBrowser.mTabs.length > 1
&& event.originalTarget.linkedBrowser.contentWindow.document.URL == 'about:blank')
gBrowser.removeTab(event.originalTarget);
if(!event.originalTarget.linkedBrowser.SSTabRestoring) return;
delete event.originalTarget.linkedBrowser.SSTabRestoring;
}
var tab = gBrowser.mTabs,max = tab.length;
for(var i = 0;i < max;++i){
if(tab[i] == event.originalTarget
|| tab[i].linkedBrowser.SSTabRestoring
|| tab[i].linkedBrowser.docShell.busyFlags
|| tab[i].linkedBrowser.contentWindow.document.URL != 'about:blank') continue;
gBrowser.removeTab(tab[i--]); --max;
}
}
gBrowser.tabContainer.addEventListener('TabOpen',callback,false);
gBrowser.tabContainer.addEventListener('SSTabRestored',callback,false);
gBrowser.tabContainer.addEventListener('SSTabRestoring',function(event){
event.originalTarget.linkedBrowser.SSTabRestoring = true; },false);
})();
710 :
604 :2007/06/27(水) 20:20:21 ID:gRaucPvx0
親切にありがとう、しかし・・・申し訳ないがウンともスーとも言わない。701も707も試した。
>>604 にある文字列をコピーしてメモ帳を開いて貼り付けて(テキスト文書、UTF-8)名前をつけてchromeフォルダに保存して、再起動したけどコンテキストメニューに追加されてないorz
こうだよな?
自分で実行したことを最初から箇条書きしてみろ。
712 :
604 :2007/06/27(水) 20:39:02 ID:gRaucPvx0
707にあるAと手順どおり→710→再起動。そして次はBで試してみて以下同じく。次にCを試す。最後に701にあるとおりchromeフォルダにsubフォルダを作ってそこに入れてみた。そして再起動
他のスクリプトは効くのか?
>>710 >再起動したけどコンテキストメニューに追加されてないorz
ロケーションバーのコンテキストメニューですけど?
>>715 Sybianの日記その人にお願いするのがよいと思います。
717 :
693 :2007/06/27(水) 22:57:01 ID:ID77ZvqU0
>>709 今、確認しましたが、Firefox(userChrome.jsは0.7、0.8ともに)でも完動です。
80氏すごいですね。
なんどもおつかれさまです。
718 :
604 :2007/06/28(木) 00:14:33 ID:udG0m2xS0
他のは問題ない。これだけがだめ、リンク先をファイルで保存ってやつができないコレがだめ。もちろんロケーションバーのコンテキストメニューな。つか、メインの右クリには反映されないのかorz
>>712 chromeフォルダの中にuserChrome.jsが入ってないか、"C"を小文字にしてるとか
このレベルで UNIX 系 OS を使ってるとは考えづらく
>>604 メモ帳開いたら文字コードはいじらないで、ファイル名だけ ***.uc.js
で保存してみな
722 :
604 :2007/06/28(木) 02:29:09 ID:udG0m2xS0
できた 721の通り文字コードを弄らなかった。ホントありがたい、ありがとう! てことは、これからはUTF-8で保存をしなければおkってことかい?
724 :
604 :2007/06/28(木) 03:01:36 ID:udG0m2xS0
userChrome.jsのまとめサイトが欲しいな。
Firefoxまとめサイトの userChrome.jsのページでいいんじゃないの。 しこしこと更新してる人もいるようだし。
XUL/Migemo0.7.0はSafariHighlight.uc.jsを搭載してる でも挙動が変 コンテキストメニューからFindbarに選択文字列(ひらがな?)をぶちこむと 選択した文字がジャンプする これ仕様?
>>727 >「すべて強調表示」をより強調する設定の時、検索がヒットした箇所をアニメーションさせるようにした
これじゃね?
XUL/Migemoは5.5からアップデートしない事にした Safari風ハイライトとかMigemo関係ねーし
/ニYニヽ (ヽ /( ゚ )( ゚ )ヽ /) (((i ) /::::⌒`´⌒::::\ ( i))) でっていうwwwwwwwwwwwwwww /∠_| ,-)___(-,|_ゝ \ ( ___、 |-┬-| ,__ ) | `ー'´ /´ | /
軽量マウスジェスチャでクリップボードのURLから新規タブで開くって出来ますか お願いします
openNewTabWith(readFromClipboard());
734 :
732 :2007/06/29(金) 04:11:31 ID:m011vn7a0
ベクターからソフトウェアをダウンロードする時に <<ベクターからのお知らせ>> Vアップ通知サービスご案内 というページが出るのですがこれを飛ばす事はできますか?
736 :
80 :2007/06/29(金) 17:55:40 ID:PLCPsdmu0
>>709 のだとタイミングによっては
起動時に復元されるタブも消してしまうようなので修正.
// Auto Close Blank Tab
(function(){
function callback(event){
var restore = (event.type == 'SSTabRestored');
if(restore){
if(gBrowser.mTabs.length > 1
&& event.originalTarget.linkedBrowser.contentDocument.URL == 'about:blank')
gBrowser.removeTab(event.originalTarget);
else delete event.originalTarget.linkedBrowser.SSTabRestoring;
}
var tab = gBrowser.mTabs,max = tab.length;
for(var i = 0;i < max;++i){
if(tab[i] == event.originalTarget
|| tab[i].linkedBrowser.SSTabRestoring
|| tab[i].linkedBrowser.docShell.busyFlags
|| tab[i].linkedBrowser.contentDocument.URL != 'about:blank'
|| (restore && !tab[i].linkedBrowser.lastURI)) continue;
gBrowser.removeTab(tab[i--]); --max;
}
}
gBrowser.tabContainer.addEventListener('TabOpen',callback,false);
gBrowser.tabContainer.addEventListener('SSTabRestored',callback,false);
gBrowser.tabContainer.addEventListener('SSTabRestoring',function(event){
event.originalTarget.linkedBrowser.SSTabRestoring = true; },false);
})();
>>737 これでよろしいかと
(function() {
var searchbar = document.getElementById("searchbar");
if (searchbar) {
searchbar.handleSearchCommand_org = searchbar.handleSearchCommand;
searchbar.handleSearchCommand = function(aEvent) {
searchbar.handleSearchCommand_org(aEvent);
// clear searchbar
this._textbox.value = "";
this._textbox._displayCurrentEngine();
// reset to default engine
setTimeout(function() {
var ss = Cc['@mozilla.org/browser/search-service;1'].getService(Ci.nsIBrowserSearchService);
ss.currentEngine = ss.defaultEngine;
}, 0);
}
}
})();
>>739 こんな激しくクレクレくんなカキコで絶対叩かれると思ったのに
なんかもう一時間足らずで神降臨とかこのスレ最高です。
ありがとうございます。
自覚してんなら、素直に
>>737 に書いてある、
SearchLoad Options 拡張の方を使えばいいのに・・・(´Д`;)
叩くわけじゃないんだけど、
スクリプト書けないのに、ユーザースクリプトを使う理由て何なの?
既存のユーザスクリプトが多数あるから なんでないの? そんなこと言い出したら xmlもjavascriptもcssも書けないのにfirefoxを使う理由て何なの? ってなりそう 公式やまとめサイトにある拡張やユーザcssを使わずに 全て自分で作る人しかfirefoxを使っちゃいけないわけじゃないんだから 望む物が既に提供されていたらそれを使えばいいんじゃない 自分で書けるに越したことはないけど 作ってくれとか無責任な要望を言う人は他のソフトにも沸くでしょ その要望に必ず応えないといけないわけでもないし興味ないものはスルーされる
説教はいい
おまいらもっと仲良く汁
一般的なツールバーボタンみたいに、 ツールバーのカスタマイズにも表示されて、 配置なども変更できるツールバーボタンを追加する良い方法ありますか? 単純に、<toolbarpalette id="BrowserToolbarPalette">内に、 <toolbarbutton 〜〜〜 />を書いたuc.xulにしても、反映されず・・・。
大人しくCustom Buttons使うか参考にするかしたら?
「興味ないものはスルー」
>>739 と一緒に入れてる小物だけどうpしてみる
search historyとかsuggestの語句選ぶと即検索にいくのを止める
enterキーまたはsearch-go-buttonで検索開始
fxの元のコードにif (キーイベント) のとこ足しただけ
(function() {
var searchbar = document.getElementById("searchbar");
var textBox = document.getAnonymousElementByAttribute(searchbar, "anonid", "searchbar-textbox");
textBox.onTextEntered = new_onTextEntered;
function new_onTextEntered(aEvent) {
var evt = aEvent || this.mEnterEvent;
if (evt && evt.keyCode == KeyEvent.DOM_VK_RETURN) {
this._getParentSearchbar().handleSearchCommand(evt);
this.mEnterEvent = null;
}
}
})();
>>752 素晴らしい!
その勢いで検索バーの履歴を新しい順にしてくれい。
754 :
80 :2007/07/03(火) 17:26:11 ID:gufAz+vr0
>>754 80さん乙です。
ちょっと聞きたいんですが、SCRAPBLOGさんとこの「選択範囲内のリンクをすべて開く」をuserMenu.jsのcontextmenuで使いたいんだけど上手くいかない。
// getBrowser〜からBrowserSearch.loa〜までをse.jsとして置いても動いてくんないんだけど、何かやり方間違ってる?
>>754 ver up乙です
GM関数のscriptがなんかうまく動かないみたいです
0.71ではおkでした
>>755 userMenu.jsに付いているサンプルスクリプトcontextmenu\Open Selection.se.jsじゃダメなんですか?
SCRAPBLOGさんとこの「選択範囲内のリンクをすべて開く」
>>756 AutoPagerize.user.js,Google Search link cleaner.use.jsを試して見ました, 問題なく動いています。
758 :
756 :2007/07/03(火) 22:57:33 ID:D/Ioy4B90
>>757 AutoPagerizeが動かなかったんです
userContent.jsのloadSubScriptのところ
obj.window = win;
obj.location = win.document.location;
を書き足したら動くようになりました
なんででしょうかね?
>>757 Open Selection.se.jsだとテキスト状態のは開くんですけど、リンクになってるのは空タブが一個開くだけなんです。
>>759 問題なくAタグのリンクも新規タブに開きますが...
about:configで
browser.dom.window.dump.enabledをtrue
javascript.options.showInConsoleをtrue
javascript.options.strictをtrueにして
から試してみて, エラーコンソールに何かエラー出てません?
>>760 すいません、Tab Mix Plus無効にしたら動きました。
最近拡張減らそうとして色々試してたんですけど、もっと試してみるべきでした。
762 :
756 :2007/07/04(水) 00:04:41 ID:6PKwkvCc0
さっきの書き足しはやめて以下試してみました userChrome.jsの置き場所がchrome直下だと動作した sub folderに入れた状態だとだめだった requireのところ、var max = path.length,err = []; の ,err = []を削除したらsub folderに入れた状態でも動作した 私の環境固有なのかなぁ
763 :
756 :2007/07/04(水) 00:08:19 ID:D/Ioy4B90
>>762 の後半は間違い、書き足したままだった
スレ汚しすんません
Autopagerizeは0.8入れた直後は正常に動作してたんだけど 何度か再起動繰り返していたら唐突に動作しなくなった どこも設定いじってないんだけどな… 0.71では問題なし
765 :
757 :2007/07/04(水) 00:57:31 ID:8yFCXaXP0
>>userContent.js ver. 0.8 googlesearchaddthumbnail.user.js greasedlightbox.user.js これらも問題なく動く
pagerization 動かねー
>>userContent.js ver. 0.8 AutoPagerize.user.js 0.0.10 および0.0.11共に問題なく動く。
「問題なく動く」だけじゃ糞の役にも立たない情報なわけだが
>>768 そういうあんたも、最低限の情報提示できてないじゃんか
Googleで動かないのは俺だけ? ニコニコやYahooは動くんだけど。
>>616 のロダから misc.uc.js を落として chrome フォルダに置き、
同ロダから BHNewTabOpen v.0.6 を落とし misc.uc.js の該当部分に上書き。
しかし、 UndoListInTabmenu AutoCloseBlankTab LocationbarNewTab の3つが動きません。
他の *.uc.js は機能しています。 misc.uc.js 内の上記3つだけが動きません。
何かしら拡張と競合してるのかと思い、
新規プロファイルを作成し、 userChrome.js 0.8 をインストールし、
Sub-Script/XUL Loader を用いても変わりありませんでした。
環境は Firefox 2.0.0.4 で WinXP です。
対処法があれば教えてください。
>>772 about:configで
browser.dom.window.dump.enabledをtrue
javascript.options.showInConsoleをtrue
javascript.options.strictをtrueにして試して, エラーコンソールに何かエラー出てません?
774 :
772 :2007/07/04(水) 21:51:29 ID:AwQWeoL20
>>773 新規プロファイルで試してみました。
browser.dom.window.dump.enabled は見つかりませんでした。
ブックマークからページを開いたときのみに
警告: reference to undefined property event.button
ソースファイル: file:///.../misc.uc.js
行: 25
と表示されます。
該当行は var target = (event.button == 1) ? TARGET_MIDCLICK という内容です。
3項演算子の途中で改行している部分です。
他の misc.uc.js に関わる動作ではエラーは表示されませんでした。
775 :
772 :2007/07/04(水) 21:53:37 ID:AwQWeoL20
失礼、該当行は BHNewTabOpen の関数内です。
>>774 > browser.dom.window.dump.enabled は見つかりませんでした。
なければ自分で作るんだよ。
まあ作っても意味ないんですけどね
778 :
772 :2007/07/04(水) 22:16:13 ID:AwQWeoL20
原因がわかりました。 Firefox を再起動し、すぐにエラーコンソールを開いたところ、 108 行目に警告がでました。 該当行は UndoListInTabmenu の関数で after.parentNode.insertBefore(menu,after); という内容です。 UndoListInTabmenu をコメントアウトすると、 他の関数は全て機能するのを確認しました。 var after = document.getElementById('tabContextUndoCloseTab'); で undef がセットされ、コケてるのでしょうか。
779 :
80 :2007/07/04(水) 22:37:04 ID:WGB5BtTp0
>>778 ↓これでどうでしょ?
// Undo List In Tab Context Menu
(function(){
var tm = document.getAnonymousElementByAttribute(gBrowser,'anonid','tabContextMenu');
var menu = document.getElementById('historyUndoMenu');
var max = tm.childNodes.length;
var after;
for(var i = 0;i < max;++i){
after = tm.childNodes[i];
if(after.id == 'tabContextUndoCloseTab'){ after = tm.childNodes[++i]; break; }
}
after.parentNode.insertBefore(menu,after);
document.getElementById('endUndoSeparator').style.display = 'none';
menu.parentNode.addEventListener('popupshowing',function(){ menu.setAttribute('disabled',false); },false);
})();
780 :
80 :2007/07/04(水) 22:43:24 ID:qiLhHCVk0
>>756 >>764 調べてみます.
できればコンソールに出力されたエラー情報も教えていただけると助かります.
781 :
756 :2007/07/04(水) 22:58:28 ID:/VtRLGkq0
>>780 動作しなかったのはAutoPagerizeで、
>>758 のようにしたら動作しました
エラーコンソールの出力なし
ayakawa SSE2-PGU build + userChrome.js 0.8 + zeniko氏のloader
ucjs script群はsub folderに配置
他の拡張、scriptをdisable allしても変わらず、でした
よろしくお願いします
782 :
772 :2007/07/04(水) 23:15:45 ID:AwQWeoL20
アリスさんならきっとコンクエリーの検索プラグインディレクトリ階層化に対応してくれると信じてる
アリスさんならきっとConQueryもどき使用後に検索単語を消してくれる機能を追加してくれると信じてる。
アリスさんならConQueryもどきを文字選択してないときはダイアログ出してその検索プラグインで検索出来るようにしてくれると信じてる。
Bookmarks and History open in New Tab が0.4・0.6両方動いてくれないです。 0.4はbmtb._bmNewTab = _bmNewTab; 0.6はmenu[i].run = _bhmNewTab; でエラー吐いてました。 それと、Undo List In Tab Context MenuをTMPみたいにページ上のコンテキストメニューに出すことは出来るでしょうか?
>>786 >>80 じゃないけれど,
たぶん, ブックマークツールバーにあるブックマークがどこにも配置されていないのがエラーの原因と思う。
表示>ツールバー>カスタマイズとして白四角ブックマークのアイコンを何処かに配置すれば, エラーはでないはず。
if(!menu[i])continue;
menu[i].run = _bhmNewTab;
のようにif文を追加すればいいと思う。
少なくとも新規プロファイルではどうかとか,
エラーの出ている付近にdump文で変数などの中身を出力してみるとか,
してみてもいいんじゃないかと....
>>788 見落としてますた。ゆるしてちょんまげ⊂⌒~⊃。Д。)⊃
アリスさんならConQueryもどきでサーチバーを非表示にしていても使えるようにしてくれると信じてる
>>787 ごめん。
ブックマークツールバーは表示してあるし、新規プロファイルも試したけど駄目だったんだ。
使えないの家だけなんかなー
792 :
80 :2007/07/06(金) 17:34:45 ID:Q10nr8q50
>>786 BHNewTabの起動が,ブックマークツールバーが構築されるより早いんじゃないかと.
起動するタイミングを遅くできれば改善すると思います.後で直しておきます.
「最近閉じたタブ」はコンテンツのコンテキストメニューにも移せます.
タブと両方にとなると少し小細工が必要ですが,そうでなければ↓みたいにして簡単に移せます.
(function(){
var cm = document.getElementById('contentAreaContextMenu');
var um = cm.appendChild(document.getElementById('historyUndoMenu'));
cm.addEventListener('popupshowing',function(){ um.setAttribute('disabled',false); },false);
})();
>>781 報告ありがとうございます.参考にします.
>>782 罫線の件,これでどうでしょうか?
// Undo List In Tab Context Menu
(function(){
var tm = document.getAnonymousElementByAttribute(gBrowser,'anonid','tabContextMenu');
var menu = document.getElementById('historyUndoMenu');
var max = tm.childNodes.length;
var after;
for(var i = 0;i < max;++i){
after = tm.childNodes[i];
if(after.id == 'tabContextUndoCloseTab'){ after = tm.childNodes[++i]; break; }
}
tm.insertBefore(menu,after);
tm.addEventListener('popupshowing',function(){ menu.setAttribute('disabled',false); },false);
})();
793 :
80 :2007/07/06(金) 17:36:19 ID:Q10nr8q50
>>782 Auto Close Blank Tab は,直したと言うか,手法を少し変えました.
// Auto Close Blank Tab
(function(){
function callback(event){
var last = (event.type == 'SSTabRestored') ? null : event.originalTarget;
setTimeout(function(){
var tab = gBrowser.mTabs,max = tab.length;
if(max <= 1) return;
for(var i = 0;i < max;++i){
if(tab[i] == last
|| tab[i].linkedBrowser.docShell.busyFlags
|| tab[i].linkedBrowser.docShell.restoringDocument
|| tab[i].linkedBrowser.contentDocument.URL != 'about:blank') continue;
gBrowser.removeTab(tab[i--]); return;
}
},0);
}
gBrowser.tabContainer.addEventListener('TabOpen',callback,false);
gBrowser.tabContainer.addEventListener('SSTabRestored',callback,false);
})();
795 :
772 :2007/07/06(金) 18:12:36 ID:RqhxskUg0
>>792 何度もありがとうございます。
罫線の件、変わりありませんでした。
Undo List In Content Context Menu は正常動作確認しましたが。
が2つとも履歴メニューに罫線が残っており、2本連続で罫線が引かれています。
>>793 なんというか、動作はしてますが、
初回起動時にアクティブだったタブ以外全てが閉じられてしまいます…。
796 :
772 :2007/07/06(金) 18:28:48 ID:RqhxskUg0
履歴メニューの罫線は
document.getElementById('endUndoSeparator').style.display = 'none';
で消せますね。
>>779 のと比較して修正しました。
それと、
>>779 の方では閉じたタブの内容がおかしくなっていたのか、
タブを復元しようとしても、空白タブが開いていましたが、
>>792 のほうでは、この現象はみられませんでした。
797 :
80 :2007/07/06(金) 18:57:19 ID:3agOiFXs0
>>795 gBrowser.tabContainer.addEventListener('SSTabRestored',callback,false);
と言う行を消せば取り合えず直ると思います.
var last = (event.type == 'SSTabRestored') ? null : event.originalTarget;
と言う行も var last = event.originalTarget; としておくと,
動作は変わらないものの無駄が減って良いと思います.
ただ,コマンドライン引数や他のアプリからURLを指定して新規タブを開いたときに,
空白タブが残ると思います.タイミング次第のような気もしますが.
色々弄ってみたんですが,空白タブの検出が思いの他難しいので改善は難しいです.
>>797 >>795 80氏じゃ無いけれど, たいへんベタな方法で タイマーをかけてみただけ。
//AutoCloseBlankTab
/*タブが新たに開いたとき空白タブを消す.*/
//Author 80氏
//
http://pc11.2ch.net/test/read.cgi/software/1168635399/736 //modfied 07/06
(function(){
var timer;
function callback(event){
if(event.type == 'SSTabRestored'){
if(gBrowser.mTabs.length > 1
&& event.originalTarget.linkedBrowser.contentWindow.document.URL == 'about:blank')
gBrowser.removeTab(event.originalTarget);
if(!event.originalTarget.linkedBrowser.SSTabRestoring) return;
delete event.originalTarget.linkedBrowser.SSTabRestoring;
}
var tab = gBrowser.mTabs,max = tab.length;
clearTimeout(timer); timer=setTimeout(function(){
for(var i = 0;i < max;++i){
if(tab[i] == event.originalTarget || tab[i].linkedBrowser.SSTabRestoring
|| tab[i].linkedBrowser.docShell.busyFlags
|| tab[i].linkedBrowser.contentWindow.document.URL != 'about:blank') continue;
gBrowser.removeTab(tab[i--]); --max;
} },event.type == 'SSTabRestored' ? 2000: 0);
}
gBrowser.tabContainer.addEventListener('TabOpen',callback,false);
gBrowser.tabContainer.addEventListener('SSTabRestored',callback,false);
gBrowser.tabContainer.addEventListener('SSTabRestoring',function(event){
event.originalTarget.linkedBrowser.SSTabRestoring = true; },false);
})();
>>792 コンテキストメニュー用Undo List In Tab Context Menuありがとう。
ちゃんと動いてます。
>>794 キタ━━━━━━m9( ゚∀゚)━━━━━━!!
完璧です!
801 :
772 :2007/07/06(金) 22:22:11 ID:RqhxskUg0
Undo List In Tab Context Menu はどうやら firstChild に挿入しないと
罫線の位置がおかしくなるようです…。
ちょっと妥協でツールメニューに追加してみました。
// Undo List In Tool Bar
/* 「最近閉じたタブ」をツールバーに */
(function(){
var menuBar = document.getElementById('main-menubar');
var menu = document.getElementById('historyUndoMenu');
menu.setAttribute('disabled',false);
menu.setAttribute('accesskey','U');
menuBar.insertBefore(menu,menuBar.lastChild);
document.getElementById('endUndoSeparator').style.display = 'none';
})();
>>797-798 おぉ、ありがとうございます。後で試してみます。
まとめサイトで紹介されてる「新しいタブを今のタブの右に開く」なんだけど、連続で開いても常に今のタブの右に開かせるにはどこ変えればいいんでしょう? 今のままだとブックマークツールバーから「すべてタブで開く」をした後右に開かないで一番最後に開いちゃう。
>>803 言い方が悪かった。
リンクをバックグラウンドで開く設定のとき、新しいタブを常に今のタブの右に開いほしいです。
Open Tabs Nextでも連続して開くとどんどん右に遠ざかってく。
>>805 Open Tabs Nextだと14行目のmOffset++をmOffsetにすればいい、かも
>>806 おほ、できました。
806さん、ありがとう
>>804 最高です!
いただきました。ありがとうございます!
コンクエリーモドキ串刺し検索キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
810 :
80 :2007/07/07(土) 22:32:04 ID:5LIsRqM10
>>810 新規プロファイルにuserChrome.js 0.8+subscriptoverlayloader.jsで試しましたが駄目でした。
値を1000以上にしても以下のエラーが出ますし、他のユーザースクリプトも動かなくなってしまいます。。
Error: BookmarksCommand is not defined
Source
BookmarksCommand.openGroupBookmark = eval(BookmarksCommand.openGroupBookmark.toString().replace('var index = index0;','var index = (aTargetBrowser == "tab") ? tabCount : index0;'));
最新のHourly trunk使ってます。
>>811 そりゃ、placesなtrunkじゃ無理だろ
>>812 あ、fx2用って書いてあった・・・
80氏ごめん。
これは便利だ!と思って BHNewTab.uc.js 0.7 を入れてみたのですが ブックマークサイドバーが開いている状態で起動した場合 起動後すぐにブックマークサイドバーにあるサイトをクリックすると 現在のタブで表示されてしまいます。 一度サイドバーを閉じて開きなおしたり ブックマークツールバーのサイトをクリックした後は きちんと新規タブで表示されます。 何とかこの手間をなくしたいのですがどうしたらいいのでしょうか? ブックマークツールバーの方は起動後すぐにクリックしても きちんと新規タブで表示されます。
>>816 オリジナルのやつだとうまく動かなかったけどこちらはきちんと動いてます。thx!
819 :
814 :2007/07/08(日) 23:54:42 ID:ont2ua5V0
>>815 ありがとうございます!
新規タブで開くようになりました
感謝です!
>>818 globalに入れる
//このフレームCDN化(.nyud.net:8080).js
//a タグの href='
http://******.nyud.net:8080 //img タグの src='
http://******.nyud.net:8080 //にするだけのもの
(function(){
const CDN = '.nyud.net:8080';
var doc =document;
var links = doc.evaluate("//a", doc.body, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
for (var i=0,len=links.snapshotLength; i<len; i++) {
links.snapshotItem(i).href = convertURL(links.snapshotItem(i).href, CDN);
}
var links = doc.evaluate("//img", doc.body, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
for (var i=0,len=links.snapshotLength; i<len; i++) {
links.snapshotItem(i).src = convertURL(links.snapshotItem(i).src, CDN);
}
function convertURL(url,CDN){
if(!url.match(/^http/i))return;
var urlParts = url.match(/^(.+?:\/\/)([^\/]+@)?([^\/]*)(.*)$/);
var scheme = urlParts[1] ? urlParts[1] : '';
var userpass = urlParts[2] ? urlParts[2] : '';
var domain = urlParts[3] ? urlParts[3] : '';
var request = urlParts[4] ? urlParts[4] : '';
return scheme + userpass + domain + CDN + request;
}
})();
間違いあり ×if(!url.match(/^http/i))return; ○if(!url.match(/^http/i))return url;
822 :
818 :2007/07/09(月) 18:46:02 ID:gBYhN3oeO
>>815 80氏作の勝手改造版を使わせてもらっているのですが、
ブックマークからの「タブですべて開く」が機能しなくなってしまいました。
うちの環境だけの現象でしょうか?
>>823 サイドバーからは開くけど、メニューバーからは開かないですね。<「タブですべて開く」
826 :
818 :2007/07/10(火) 21:36:35 ID:KrZneoVM0
>>820-821 帰宅して試してみました。
userMenu.jsでは動かないみたいです。残念。無念。
828 :
826 :2007/07/10(火) 22:15:12 ID:KrZneoVM0
>>827 userMenu.js 0.7
userChrome.0.7
だと動かない。
コピペみすってるのかな?
他で拾ったJavaScriptActionsは動いてるのに。
829 :
818 :2007/07/10(火) 22:41:26 ID:KrZneoVM0
>>827 お、わかりました。
>>820-821 さんの作ってくださったものと私の望んでいた動作と違っているみたいですねorz
私は、アドレスバーにあるURLを.nyud.net:8080に通したいんですよ。
って、情報小出しですみません
>>820 ,827
Wayback.nl.jsのような感じの動作を望んでいました。
ロケーションバーのURLを加工→新規タブで開く。
>>829 まずJavaAcript Actionsと言っておきながら
それがuserMenu.js ではと,
さらには,>アドレスバーにあるURLを.nyud.net:8080に通したいんですよ。
などと....
いずれにしてもあなたが望んでいた動作を実現するのにはJavaAcript ActionsやuserMenu.js用スクリプトで実装するのは不向きですね。
どちらかというとuserChrome.uj用スクリプトでしょうね...
がんばってください。
間違い。×userChrome.uj, ○userChrome.js
>>825 ありがとうございます。
ブックマークの方は動作するようになったのですが、ブックマークツールバーに
登録してある方は無反応みたいです。
834 :
818 :2007/07/10(火) 23:16:48 ID:KrZneoVM0
>>830 情報小出しですみません。
userChrome.jsで書くしかないのですか。
Wayback.nl.jsがあったので簡単にいくものだと思っていましたがそうでもないのですね。
>>832 まさにそれがやりたい訳ですがアドオンを増やしたくないなぁ。と。
>>833 if(pNode.id=='bookmarks-menu'){
を
if(pNode.id=='bookmarks-menu' || pNode.id=='PersonalToolbar'){
にすればよい
>>834 動作未確認ですがuserMenu.js用 .nl.js または JavaAcript Actions用 global
(function(){
const CDN = '.nyud.net:8080';
gBrowser.addTab( (gContextMenu.onLink) ? convertURL(gContextMenu.linkURL,CDN) : convertURL(document.URL,CDN));
function convertURL(url,CDN){
if(!url.match(/^http/i))return url;
var urlParts = url.match(/^(.+?:\/\/)([^\/]+@)?([^\/]*)(.*)$/);
var scheme = urlParts[1] ? urlParts[1] : '';
var userpass = urlParts[2] ? urlParts[2] : '';
var domain = urlParts[3] ? urlParts[3] : '';
var request = urlParts[4] ? urlParts[4] : '';
return scheme + userpass + domain + CDN + request;
}
})();
837 :
818 :2007/07/10(火) 23:32:39 ID:KrZneoVM0
>>836 何度も何度もありがとうございます。
そして、お手数をおかけしてすみませんでした。
動きましたので報告させていただきます。
>>835 動きました!
凄く便利になりました。ありがとうございました。
chrome://browser/content/bookmarks/bookmarksManager.xul これをタブで読み込んだときにブックマークドラッグするとそのタブが そのブックマークに移動しないようにできますか? あとブックマークをドラッグしてフォームに入れると URL タイトル みたいになるのを URL のみに出来ますか?
googleautopagerが動かなくなった><
844 :
名無しさん@お腹いっぱい。 :2007/07/12(木) 06:40:00 ID:vrwhBWsq0
2ch みたいに画像のリンクをポップアップしてくれるスクリプトってありませんか? 探してみたのですが見つからなくって。
>>845 >画像のリンクをポップアップ
"画像のURIをポップアップ"ということですか?
専ブラみたいに リンク先の画像をポップアップっていいたいんじゃないかと推測
常時オンにするとクソ重いよそれ
Greasemonkeyだと重いけどuserContent.jsならそんなに気にならないと思いますよ
userContent.jsの唯一の欠点はスクリプト毎のオンオフ切替がその場で出来ないところかね まあ特に必要ないんだけど
userContent.jsの方が軽いの?
854 :
名無しさん@お腹いっぱい。 :2007/07/14(土) 09:35:12 ID:3nAnvVeu0
userContent.js 0.8でGreasemonkeyのスクリプトを動かしてみたけど、 圧倒的にGreasemonkeyより重くなったわ・・・。 Gmailをいじる系のものをいっぱいつかってるんだけど、一個ずつ確かめたら 重くならないスクリプトの方が少なかった。 おとなしくGreasemonkey使う・・・。
>>854 READ_GMMETAをきちんと設定していないか, ファイル名に{}を記述しているか確認したのでしょうか。
何も設定しなければ, 全てのURLで全てのスクリプトが動くことになって処理に負荷が掛かっているということも考えられる。
私見では概ね, GreasemonkeyよりuserContent.js ver. 0.8の方がスクリプト起動時の負荷が少ないように感じる。
重いとか軽いとか言わずに、定量的なデータを出すべきでは
>>857 に追記
READ_GMMETA=1の時 ファイル名が※※.user.jsじゃなくて※※.users.jsでないと認識しないので,
スクリプトファイルをダウンロードしてそのまま使う場合は注意を要する。
const REGEX_SCRIPTFILE = /^(?:[0-9]+\.)?(.+?)(\.users)?((?: *!?{[^{}]+} *)+)?\.js$/;
を
const REGEX_SCRIPTFILE = /^(?:[0-9]+\.)?(.+?)(\.users?)?((?: *!?{[^{}]+} *)+)?\.js$/;
にすれば, userまたはusersでもどちらも認識するようになる。
>>857 言われたとおりにしたら確かに軽くなった・・・。
無知すまんかったorz
863 :
名無しさん@お腹いっぱい。 :2007/07/14(土) 17:38:55 ID:L+n+FIsP0
>>861 あ、Firefoxを再起動すると元に戻るのね。
変更した設定は再起動後も生きてれば良かったかな。
>>861 最後のもひとつ、何故かCuteMenus - Crystal SVG 1.9.1とバッティングしてるっぽい。
パッチ前だと何ともならないけど、パッチ後だとアイコンが全滅します。
>>863 変更した設定は再起動後も生きるようにした。
>>864 当方CuteMenus - Crystal SVG 1.9.1使用していないため, 検証できません...
>>864 CuteMenus - Crystal SVG 1.9.1 を入れてみた。
特に問題は見あたらないのですが....
このスレのレベル低く過ぎ
・・と、自称レベルの高い猛者が申してますww
>>871 trunk(2007071405)だとメニューがでないっす
branchではおkなんですけど
新ジャンル 『 80氏じゃないけれど 』
>>874 こんなだったかと old+ と new- の 差分
- var menu = document.createElementNS(kXULNS,'menu');
- menu.setAttribute('id','userContentjs.menu');
- menu.setAttribute('label','userContent.js');
-
- var menupopup = document.createElementNS(kXULNS,'menupopup');
- menupopup.setAttribute('id','userContentjs.menupopup');
- menupopup.setAttribute('accesskey','u');
- menupopup.setAttribute('onpopupshowing','onpopup()');
- menupopup.setAttribute('menugenerated','true');
- menu.appendChild(menupopup);
- var refmenu = document.getElementById('menu_preferences');
- refmenu.parentNode.insertBefore(menu,refmenu);
+ var overlay =
+ <overlay xmlns={ kXULNS }>
+ <menupopup id="menu_ToolsPopup">
+ <menu id="userContentjs.menu"
+ label="userContent.js"
+ insertbefore="menu_preferences">
+ <menupopup id="userContentjs.menupopup"
+ accesskey="u"
+ onpopupshowing="onpopup()"
+ menugenerated="true"/>
+ </menu>
+ </menupopup>
+ </overlay>;
+ overlay = "data:application/vnd.mozilla.xul+xml;charset=utf-8," + encodeURI(overlay.toXMLString());
+ document.loadOverlay(overlay, null);
userContent.js 0.8
URL指定が前方一致なのがつらい。スクリプトのファイル名で
script{www.example.com^hoge}.js
としたら、
http://www.example.com/hoge だけでなく hoge 以下のすべての
コンテンツに適用されてしまう。
でもソースよく見たら ^, + 以外は普通の正規表現のメタ文字使えるようなので
script {www.example.com^hoge$}.js
で解決でした。同じ悩みの人がいるかもしれないので晒しときます。
ただ GM の @include, @exclude メタデータの URL指定は全文一致なので
userContent.js 0.8 line 190, 191 の compile() 内に + '$' を付けた方が
よい気がします。
878 :
80 :2007/07/15(日) 18:27:40 ID:ZbcMkNrP0
新しいの上げました.
userContent.js ver. 0.9
http://www6.uploader.jp/dl/script/script_uljp00014.zip.html userMenu.js ver. 0.8
http://www6.uploader.jp/dl/script/script_uljp00015.zip.html 共通の更新内容
・動作設定のDIRNAME_HOSTを廃止.自力で取得するように.
・エラー情報の出し方を動作設定で変更できるように.デフォでコンソールとエラーコンソールの両方に出力.
・windowとlocationが正しく割り当てられない事があったので修正.
・コンテンツ内のスクリプトの影響を受ける危険性があったので修正.
・windowとdocumentはXPCNativeWrapperでラップするように.生のオブジェクトはunsafeWindowとunsafeDocumentに.
userContent.jsの更新内容
・実行時の処理の高速化.
・スクリプトを指すオブジェクトを_thisに入れて渡すように.
・URL の全文一致に正式対応.
・GMメタデータを読み込むファイル名末尾が「.users.js」だったのを「.user.js」に修正.
・GMメタデータのinclude,excludeが正しく読まれない事があったので修正.
・GMメタデータのinclude,excludeを前方一致から全文一致に修正.
userMenu.jsの更新内容
・_this の内容がmenuitemからスクリプトを指すオブジェクトに変更.(menuitemはevent.targetに入ってる)
・event.buttonの情報があまり正しくなかったのを修正.
・タブメニューからの呼び出し時の window オブジェクトを,タブに応じたものに修正.
>>877 ご指摘有難うございます.直しておきました.
>>876 どうもありがと。
loadOverlayって、微妙に同期処理なのか
非同期処理なのかわからない部分があるんだよね。
ローダーによっては、loadOverlayで読み込まれるスクリプト中で
loadOverlayを使うことになるかな、ひょっとしたらそのせいかな?
>>880 80氏もこちらも乙っす。
On/Off切り替え、本家(80氏)にマージしてもらうか、別スクリプトに
独立させたほうがよいのでは?
いつも patch だと作る方も使う方も大変ですし。
>>878 80氏乙です。
早速頂いたんですが、いくつか質問が。
・userMenu.js ver. 0.8だと使ってない(ディレクトリ作ってない)のにメニューバーにuserが表示されます。
0.7だと消えてたんですが、0.8で消すにはどうすれば良いですか?
EXTRAMENUをfalseにしても消えないです。
・userContent.js ver. 0.9のreadmeに書いてあるサンプル・ReloadImage.jsが見当たらないです。
使ってみたいのですが、うp願えるでしょうか?
>>882 ごめん。今起動したらuserMenu.jsの方は出なくなってた。
>>884 80氏じゃないけれど
GM_modoki.jslの83行目「if (obj.overrideMimeType) { 」の前に
if (obj.overrideMimeType) {
req.overrideMimeType(obj.overrideMimeType);
}
を追加すればOK
>>885 ×GM_modoki.jslの83行目「if (obj.overrideMimeType) { 」の前に
○GM_modoki.jslの83行目「if(typeof obj.data == 'string') req.send(obj.data);」の前に
887 :
80 :2007/07/16(月) 18:11:27 ID:Yg4gycb20
>>881 マージと言うか次バージョンでon/offのメニューぐらいは付けようかと思っとります.
パッチの件は,当方としては改変されたソースそのまま公開していただいて一向に構わないので,
改変の製作者さんはどうぞ気兼ねなく改変ソースを公開してください.
>>882 ReloadImage.jsはうまく動かない事が在って,同封しようか迷っていてそのまま存在を忘れてました.
内容は↓こんな感じの単純なものです.
const CACHE_SERVICE = Cc['@mozilla.org/network/cache-service;1'].getService(Ci.nsICacheService);
document.addEventListener('mouseover',function(event){
if(!/^img$/i.test(event.originalTarget.tagName)) return;
var img = event.originalTarget;
if(!img.complete) img.src = img.src;
else{
if(!/^(https?):/(img.src)) return;
var session = CACHE_SERVICE.createSession(RegExp.$1.toUpperCase(),0,true);
session.doomEntriesIfExpired = false;
try{ session.openCacheEntry(img.src,Ci.nsICache.ACCESS_READ,false); }
catch(e){ img.src = img.src; }
}
},false);
>>885 有難うございます.直しておきます.
>>885 正常に表示されるのを確認しました
ありがとうございます.
>>887 ReloadImage.js早速使ってみるっす。
890 :
名無しさん@お腹いっぱい。 :2007/07/17(火) 10:43:01 ID:bcxR0q5r0
>>890 userContent.js.readme.txtおよびuserContent.uc.jsを読めば分かるはず。
二つの方法がある。
1. ファイル名をautopagerize!{^.google.^}{^}.js とする
2. ファイル名はautopagerize.user.jsのままで, ファイル内の// @include *の次行に// @exclude *.google.*を挿入
危険すぎる...スクリプトがどういう動作をするかも分からずに安易に使うなどとは。
//shortmenu modoki //add prefs.js this line //user_pref("intl.menuitems.alwaysappendaccesskeys", "false"); (function() { var nodes = document.getElementById('main-menubar').childNodes; for (var i = 0, max = nodes.length; i<max; i++) { var label = nodes[i].getAttribute('accesskey').toUpperCase() ; nodes[i].setAttribute('label', label); } })();
>>893 俺はショートメニューとか使ったことないんだけど、
それってショートすぎね?でも、ちょっと面白かった。
p2.2ch.netでの書き込みフォームを、モリタポを必要としない書き込みフォームにすり替えるスクリプトとかってできますでしょうか。
>>669 これが動かないのですが何か相性とかあるんでしょうか
LaunchIEとニコニコのスクリプトってuserchrome0.8で動かないの?
>>896 相性といわれても...拡張機能, テーマ, userCrome.jsのスクリプト, ましてやFxのバージョンおよびOS種別が不明では回答のしようもない。
alice0775のファイル置き場で配布されているttp2http_drop_urlbar.uc.jsの "ttp"で始まるURLをロケーションバーに貼り付けた時、頭に"h"を自動で補完してくれる機能について. 全く動作しないので新規プロファイルで拡張を順に無効にして調べたところIE Tabと衝突しているようです 同様にttpで始まるテキストをロケーションバーにドロップで開く機能も動作する時としない時があるようです 現在はIE Tabを無効にしOpen IE.nl.jsで代用していますが対応して頂けると嬉しいです 環境 WindowsXP Professional SP2 Fx2.0.0.4 alice0775さんのサブスクリプトローダ使用 userChrome.js 0.8 IE Tab 1.3.3.20070528
>>901 IE Tab使用時のロケーションバー貼り付け、無事動作しているのを確認しました
本当にありがとうございます
お手を煩わせてしまって申し訳ありませんでした
DOM Inspector で Select Element By Click する時に 左クリックで反応しちゃうからメニューの深い階層を調査できないのが微妙に不便なので 中クリックのみに反応するようにするパッチ userChrome.js 0.8用 // ==UserScript== // @include chrome://inspector/content/viewers/dom/dom.xul // ==/UserScript== eval('MouseDownListener.handleEvent = ' + MouseDownListener.handleEvent.toString().replace( 'if (aEvent.type == "mousedown") {', 'if (aEvent.type == "mousedown" && aEvent.button == 1) {' ) );
905 :
80 :2007/07/18(水) 18:06:16 ID:0+uOIiRf0
>>890 readmeの説明が間違っていて,!{}は単体では動作しません.
今後はreadmeの説明どおりに単体で使えるようにします.
現状では,
>>891 さんの言うようにする事で動作するはずです.
907 :
80 :2007/07/18(水) 23:21:11 ID:iIMNsNjl0
>>906 件のスクリプトの76行目を変更すれば動きます.
aTags[i].onclick = showIframe;
↓
aTags[i].addEventListener('click',showIframe,false);
理由は,XPCNativeWrapperの影響でonclickが使えなくなったためです.
Greasemonkeyでも同様の理由でこのスクリプトは動かないと思うんですが.
909 :
906 :2007/07/19(木) 01:06:54 ID:GR/TuHqi0
>>907 ,908
動くようになりました。
Greasemonkey では試してなかったので、てっきり userContent.js に
問題があるのかと…申し訳ないです。
何も修正しなければいい。余計な修正してるだろ。
userMenu.jsを最新のものに入れ換えたのだが、同梱のOpen IE,nl.jsをtoolmenuに入れると動かない。contextmenuだと動く。なんで?
913 :
910 :2007/07/19(木) 05:44:09 ID:D//zo7Ow0
Sleipnirで文字列コピーしたんだけど、 ショートカットコピーが利かなくてプロパティーからコピーしてたんで、そのせいかも。 Firefoxでコピペしてファイル作成したらOKだった。 ありがと。
userMenu.jsでGoogle Translate.se.jsとOpen IE.nl.jsを入れてみたんですけど、 Menu Editorが有効の状態だとコンテキストメニューに表示されません。 Menu Editorが有効の場合でも設定でコンテキストメニューを選んで、 どれでもいいので表示・非表示を切り替えて元に戻してからOKを押したら表示されました。 解決策はありますか?
916 :
80 :2007/07/19(木) 18:12:26 ID:zrApnxBi0
>>912 コンテキストメニュー用に書いてあるので,他のメニューでは動きません.
最後の行を以下のように書き換えれば他のメニューでも動きます.
process.run(false,[(gContextMenu.onLink) ? gContextMenu.linkURL : document.URL],1);
↓
process.run(false,[document.URL],1);
>>914 調べてみます.
参考までにfirefoxとMenu Editorのバージョンと,サブスクリプトローダーを教えてください.
>>546 とかをJSA_modoki.jslで使えませんか?
jsa.jslでは動いてたんですが
>>917 JSA_modoki.jsl内のtypoですね, 以下のように修正すれば動くと思う。
×get link(){ return (gContextMenu) ? gContextMenu.linkk : false; },
○get link(){ return (gContextMenu) ? gContextMenu.link : false; },
920 :
914 :2007/07/19(木) 19:03:46 ID:AwmClnEd0
921 :
915 :2007/07/19(木) 19:18:53 ID:kFctGrOC0
>>920 Menu Editorで メニューを編集した場合, menuseparatorのidが変わってしまうのが原因と思われる
userMenu.uc.jsの以下の文のid名'context-sep-stop'を例えば'context-bookmarklink'にすればOKと思う。
const AFTER_CONTEXTMENU = document.getElementById('context-sep-stop');
922 :
914 :2007/07/19(木) 19:53:03 ID:AwmClnEd0
>>921 const AFTER_CONTEXTMENU = document.getElementById('context-bookmarklink');
にしてみたんですけど変わりませんでした。
また、コンテキストメニューに表示されてる時に文字列を選択すると、
userChrome.jsのScroll Search Engines(
ttp://www.xuldev.org/blog/?p=71 )が動かないです。
Google Translate.se.jsは動きます。
923 :
915 :2007/07/19(木) 20:10:22 ID:kFctGrOC0
Web閲覧時にスペースバーでページダウンさせているのですがIMがONになっているとこれが使えません IMがONになっていてもページダウンやらせて ください
>>924 Fx2, WinXp ATOK2006であれば,
ATOKのプロパティで入力補助,スペースキーで入力する空白文字 常に半角
および, Shift+スペース, 常に半角
とすることでOK,
他のOS, IMEは知りません。
926 :
914 :2007/07/19(木) 20:47:14 ID:AwmClnEd0
>>923 表示されているメニューのID('context-searchselect')にしたところ無事に動きました!
>userChrome. jsの話題37 拡張機能MenuEditorと共存させる
こちらは既に導入済みで、IDを変更したらScroll Search Enginesも動きました。
本当にありがとうございました!
80氏、お手数をお掛けしました。
ありがたく使わせていただきます。
927 :
名無しさん@お腹いっぱい。 :2007/07/20(金) 01:30:38 ID:TC4YZdBG0
>>927 そう。上のアドレスの方にアクセスしてる。
有志がどんどん対応サイト増やしてくれるので
利用者はスクリプトをインストールするだけで
ほっとけば、対応サイトはガンガン増えていく。
>>924 Microsoft IME でも スペースを”常に半角”で可能
>>929 IMEで常に半角にしてるけど、できないよ?
931 :
名無しさん@お腹いっぱい。 :2007/07/20(金) 03:37:33 ID:TC4YZdBG0
>>928 あり。
でもちょっと気持ち悪いな。
てか対応サイトにいっても動いてくれないんだが。
>>931 Manage 画面の included pages は * になってるか?
933 :
80 :2007/07/20(金) 18:03:07 ID:jUn2nPiG0
934 :
914 :2007/07/20(金) 22:54:13 ID:CMVNsF1M0
>>933 >>926 の最後の2行は915氏ではなく80氏へのメッセージです。
わざわざ調べてくれるということだったので、その間に解決してしまったのではないかと思いまして。
書き方が紛らわしかったですね。すみません。
userContent.jsもありがたく使わせていただいてます。
>>936 about:configでbrowser.sessionstore.enabledがtrueになっているか確認下さい。
938 :
936 :2007/07/21(土) 13:09:53 ID:KJ9mgNdf0
939 :
937 :2007/07/21(土) 13:39:12 ID:mlz6SuYN0
>>938 当方では,Fx2.0.0.5において当該スクリプトによる再起動後もタブが復元されますので, 別の要因,例えば他のスクリプト, 拡張機能, テーマとの干渉およびプロファイルの破損が考えられます。
新規プロファイルを作成するのが不具合解消の早道だと思います。
940 :
936 :2007/07/21(土) 13:54:03 ID:KJ9mgNdf0
>>939 新規プロファイルを作成したところ、問題が解決しました。
ありがとうございました。
タブを閉じたときに直前に開いていたタブにフォーカス するuc.jsってありましたっけ?
左のタブならどこかにあったと思う。 どうしても直前のタブがいいならFLSTって拡張がそれ専用だからそっち使えばいいんでない?
>>942 そうなのかサンクス。
しかし、tabmix plus外してスクリプトに置き換えてるから、
それだけ拡張入れるって何か微妙だな。
このスレの神様お願いします。
alice0775さんとかの神レベルのスクリプト書きもタブ周りはTab Mixに任せてるようだよ。 このスレで言うのもアレだけど、何でもかんでもスクリプトに置き換えたいってのは厨な考え。
>>944 確かにtabmix入れればいいだけの話なんだよな。
でも、tabmixとかのタブ拡張は個人的にだが、
要らない機能が多すぎるんだよ。
それなら細かいスクリプト5,6個入れた方がなんか気持ちいい。
まあ結局自己満足なんだけど。
右クリック出来ないようになってるサイトとかで右クリック出来るようにするスクリプトってある? こういう拡張入れろ、っていうのでもいいんだけど
>>945 それならTab Mix Liteはどうよ?
サイズ的には同等機能分スクリプト数個の合計と大差ないし、たぶん重さも変わらない。
>>946 そんなの拡張やスクリプトを使わなくても、Firefox本体のJava Script設定で有効にできるだろ?
>>945 拡張一覧に表示される拡張を減らす事が目的じゃなくて、
要らない機能の詰まった拡張(tab mix plugやall in one sidebar)を
必要な機能を単体で持つ拡張やuc.jsの組み合わせ
に置き換えることが目的じゃないの?
それならtab mix plus→FLST+もろもろのuc.jsってのは理にかなってるんじゃないの?
ちなみに、俺はFLST使ってたけど、左のタブに移るやつで十分だからそれを使ってる。
新しくタブを開く時は絶対右側に開くし、
「直前にアクティブだったタブに移る」だと
キーボードショートカットで沢山閉じる時に余計なものまで閉じてしまう。
>>946 ツール→オプション→コンテンツ→JavaScript→詳細設定→コンテキストメニューを無効化または変更する
これをオフ
>>947 >>949 トン
javaって個別にオンオフ切り替えられるようになってるのね……
無知晒してスマソ
>>950 JavaじゃなくてJavaScriptな
全然別物なんだぜ?
>>948 おれは、まさしくこれだな。
Fx 1.0、1.5 の頃は、Tab Mix Plusを使ってたけど、
Fx 2.0 からタブ周りが大幅に改善されたのを機に、
・タブの最小幅、最大幅を固定するUS
・タブのダブルクリックで更新するUS
・新しいタブを現在の右隣に開くUS
を作って導入したが、
タブを閉じたら直前のタブを開くのだけは、
なんか複雑そうなので、FLSTを使ってる。
AIOSにある「タブバー上にあらかじめ設定されたツールバーを可能にする」という機能を uc.jsで置き換えたいのですがどのように書けばよいのでしょうか?
>>953 // ==UserScript==
// @name toolbar-at-either-end-of-tabbar.uc.js
// @description タブバーの両端にツールバーを追加
// @include main
// @compatibility Firefox 2.0 WinXP
// @version LastMod 2007/07/22 17::30
// @note このスクリプトを実行する前に, ツールバーカスタマイズにおいてtabtoolbar-leftおよびtabtoolbar-rightという名前でツールバーを作成し, それぞれにツールボタンを配置しておく事。
// @note 配置後, このスクリプトを有効にしてFxを再起動する。
// ==/UserScript==
(function(){
var tabbrowser = document.getElementById('content');
var tabbrowserstrip = document.getAnonymousElementByAttribute(tabbrowser, 'anonid', 'strip');
var tabs = document.getAnonymousElementByAttribute(tabbrowser, 'anonid', 'tabcontainer');
try{
var toolboxLeft = document.createElement("toolbox");
var tabtoolbarLeft = document.getElementById('__customToolbar_tabtoolbar-left');
toolboxLeft.appendChild(tabtoolbarLeft);
tabbrowserstrip.insertBefore(toolboxLeft,tabs);
}catch(e){}
try{
var toolboxright = document.createElement("toolbox");
var tabtoolbarright = document.getElementById('__customToolbar_tabtoolbar-right');
toolboxright.appendChild(tabtoolbarright);
tabbrowserstrip.appendChild(toolboxright);
}catch(e){}
})();
>>954 意外と長くなるんですね
非常に助かりました、ありがとうございます
>952 タブのダブルクリックで更新するUSが欲しいのですが うpなどは駄目ですか? もしよろしかったらお願いしますm(_ _)m
TinyMenu と同じ動作する uc.js ってあるかな。 一見簡単そうだけど、実は難しい気もする。
961 :
960 :2007/07/23(月) 03:13:10 ID:7wXsg6ij0
>>960 パレット>ツールバーはokだが戻せない...orz
戻す場合は,localstore.rdfを削除することで...
ちょっと便乗して質問。 dragdropuploadという拡張と同じ機能のスクリプトがもしあるなら教えてください。m(_ _)mペコリ ってか誰かつくっ(ry
963 :
960 :2007/07/23(月) 04:07:57 ID:7wXsg6ij0
964 :
960 :2007/07/23(月) 06:17:16 ID:7wXsg6ij0
>>963 これを使うぐらいなら,AIOSの方がスマートと思った。
>>958 俺、同じもの作って公開してたよ、ははは。
>>952 タブのダブルクリックで更新するUS
が、欲しいのですが頂けませんか?
現在のページのgoogleキャッシュを表示する カスタムボタン探しているのですが ありませんか?
>>958 >>959 お二方、ありがとう!
uc.js の方で見事に思い通りのことができたので、そちらを採用しました。
(履歴だけはメニューバーに残したかったので少し手を加えて。)
userChrome.css の方も、なるほど hover 使うとこういう動的なことが
できるんだ、面白い。勉強になりました。
選択した部分のソースを表示をバックグラウンドのタブで開ける様にしたいのですが、良い方法ありませんかね? View Selection Source in Tabを左クリックで開ける様にしたつもりが、 ウィンドウまで開いちゃうので。 出来れば、左クリックでタブ(バックグラウンド)がいいので。 探してみても検索が悪いの見つかりませんでした。 教えてエロい人!!
Findbarをタブバーの下に表示させたいんだけど、 XUL/Migemo 0.7.7を有効にしてるとfindbarontop.uc.jsが効かない(´・ω・`) どこをいじればいいのかな?
>>972 (function() {
var searchMenu = document.getElementById("context-searchselect");
searchMenu.addEventListener("DOMMouseScroll", function(event) {
var searchBar = BrowserSearch.getSearchBar();
if (searchBar) {
searchBar.selectEngine(event, event.detail > 0);
var engineName = searchBar.currentEngine.name;
} else {
var bss = Cc['@mozilla.org/browser/search-service;1'].getService(Ci.nsIBrowserSearchService);
var engines = bss.getVisibleEngines({});
var newIndex = engines.indexOf(bss.defaultEngine) + (event.detail > 0 ? 1 : -1);
if (newIndex < 0 || newIndex >= engines.length) return;
var engineName = engines[newIndex].name;
var str = Components.classes['@mozilla.org/supports-string;1'].createInstance(Components.interfaces.nsISupportsString);
str.data = engineName;
Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch)
.setComplexValue("browser.search.defaultenginename", Components.interfaces.nsISupportsString, str);
}
var label = gNavigatorBundle.getFormattedString("contextMenuSearchText", [engineName, getBrowserSelection(16)]);
event.originalTarget.setAttribute("label", label);
}, false);
searchMenu.addEventListener("click", function(event) {
if (event.button == 1) {
BrowserSearch.loadSearch(getBrowserSelection(), true);
event.originalTarget.parentNode.hidePopup();
}
}, false);
}());
>>971 nsContextMenu.prototype.viewPartialSource = function(event) {
var focusedWindow = document.commandDispatcher.focusedWindow;
if (!focusedWindow || focusedWindow == window)
focusedWindow = content;
if (!focusedWindow.getSelection()) return;
var x = focusedWindow.document.createElement("div");
x.appendChild(focusedWindow.getSelection().getRangeAt(0).cloneContents());
var sel = x.innerHTML;
if(!sel) {
alert("You didn't select any text.");
return;
}
var doctype = focusedWindow.document.contentType;
var charset = "utf-8"; // use unicode
var url = "view-source:data:" + doctype + ";charset=" + charset +
"," + encodeURIComponent(sel);
var tab = gBrowser.addTab(url);
window.setTimeout(function() {
tab.linkedBrowser.contentDocument.title = "DOM Source of Selection";
});
}
>>975 MathMLのこと忘れてた
nsContextMenu.prototype.viewPartialSource_orig = nsContextMenu.prototype.viewPartialSource;
nsContextMenu.prototype.viewPartialSource = function(context) {
if (context == "mathml") {
this.viewPartialSource_orig("mathml");
return;
}
var focusedWindow = document.commandDispatcher.focusedWindow;
if (!focusedWindow || focusedWindow == window)
focusedWindow = content;
if (!focusedWindow.getSelection()) return;
var x = focusedWindow.document.createElement("div");
x.appendChild(focusedWindow.getSelection().getRangeAt(0).cloneContents());
var sel = x.innerHTML;
if(!sel) {
alert("You didn't select any text.");
return;
}
var doctype = focusedWindow.document.contentType;
var charset = "utf-8"; // use unicode
var url = "view-source:data:" + doctype + ";charset=" + charset +
"," + encodeURIComponent(sel);
var tab = gBrowser.addTab(url);
window.setTimeout(function() {
tab.linkedBrowser.contentDocument.title = "DOM Source of Selection";
});
}
QuickProxyというproxyの状態をステータスバーに表示してくれる拡張がありますが、 設定自体はメニューバーからたどっていかないと変更できないので不便です。 ステータスバーのアイコンを右クリックしたら設定ダイアログが開けばいいなと思い、 ソースを見つつuc.xulで書こうとしたのですが力及ばず。 どなたか作っていただけませんか?
>>977 https://addons.mozilla.org/ja/firefox/addon/1557のことなら以下の通り 左クリック:proxy ON/OFF
中クリック:オプション>詳細>ネットワーク>接続設定のダイアログ表示
右クリック:QuickProxyのSettingsダイアログ表示
// ==UserScript==
// @name quickProxy_add_preferences.uc.js
// @namespace
http://space.geocities.yahoo.co.jp/gl/alice0775 // @description preferences dialog open by middle click on statusbar icon
// @include main
// @compatibility Firefox 2.0 WinXP
// @author Alice0775
// @version LastMod 2007/07/24 17:00
// ==/UserScript==
(function(){
var QuickProxy_Click_orig = QuickProxy_Click;
QuickProxy_Click = function(e){
if (e.button == 1) {
var aURL = "chrome://browser/content/preferences/connection.xul";
var aName ="";
var aFeatures = "modal,centerscreen,resizable=no";
var aParams = null;
openDialog(aURL, aName, aFeatures, aParams);
e.preventDefault();
return;
} // Middle Click
QuickProxy_Click_orig(e);
};
})();
980 :
名無しさん@お腹いっぱい。 :2007/07/25(水) 02:55:00 ID:XBmugA180
Firefoxがヴァージョン上がってGreasemonkey落ちてない?
981 :
名無しさん@お腹いっぱい。 :2007/07/25(水) 03:46:59 ID:FqXgcSv50
>>980 以下の環境においてGMは動いています。
Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.8.1.5) Gecko/20070713 Firefox/2.0.0.5
Greasemonkey 0.7.20070607.0
AutoPagerize0.0.12, Google Search Add Thumbnail0.0.1
982 :
名無しさん@お腹いっぱい。 :2007/07/25(水) 04:24:31 ID:XBmugA180
コチラはこれです。 Mozilla/5.0 (Windows; U; Windows NT 6.0; ja; rv:1.8.1.5) Gecko/20070713 Firefox/2.0.0.5 これでGreasemonkeyが全く動かなくなりました。 おかしい。
983 :
名無しさん@お腹いっぱい。 :2007/07/25(水) 04:43:03 ID:XBmugA180
lolifoxってのが正規ヴァージョンより若干遅いヴァージョンなので、コッチを入れてみたらGreaseMonkeyが復活致しました。 ちょっとした不具合でしょうね。
984 :
971 :2007/07/25(水) 05:31:54 ID:x8/hMLpb0
誰か次のスレ作成して下さい。
埋め
990 :
988 :
2007/07/26(木) 03:04:30 ID:vnWGsM5K0 >>988 このスクリプトはFx2.0用です。trunkでは動きません。